[*] Binary protection state of libssh2.so.1.0.1
Full RELRO Canary found NX disabled DSO No RPATH No RUNPATH No Symbols
[*] Function mmap tear down of libssh2.so.1.0.1
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libssh2.so.1.0.1 @ 0x4594 */
| #include <stdint.h>
|
; (fcn) entry.fini0 () | void entry_fini0 () {
0x00004594 lui gp, 5 |
0x00004598 addiu gp, gp, 0xb7c |
0x0000459c addu gp, gp, t9 | gp += t9;
0x000045a0 addiu sp, sp, -0x20 |
0x000045a4 sw s0, 0x18(sp) | *(var_18h) = s0;
0x000045a8 lw s0, -0x7fe4(gp) | s0 = *((gp - 8185));
0x000045ac sw gp, 0x10(sp) | *(var_10h) = gp;
0x000045b0 sw ra, 0x1c(sp) | *(var_1ch) = ra;
0x000045b4 lbu v0, -0x29e0(s0) | v0 = *((s0 - 10720));
0x000045b8 lw v0, -0x7c8c(gp) | v0 = *((gp - 7971));
| if (v0 == 0) {
0x000045bc bnez v0, 0x45f0 |
0x000045c0 lw v0, -0x7fe0(gp) | v0 = *((gp - 8184));
| if (v0 != 0) {
0x000045c4 beqz v0, 0x45d8 |
0x000045c8 lw t9, -0x7c8c(gp) | t9 = *((gp - 7971));
0x000045cc lw a0, (v0) | a0 = *(v0);
0x000045d0 jalr t9 | t9 ();
0x000045d4 lw gp, 0x10(sp) | gp = *(var_10h);
| }
0x000045d8 lw t9, -0x7fdc(gp) | t9 = *((gp - 8183));
0x000045dc addiu t9, t9, 0x4510 | t9 += entry0;
0x000045e0 bal 0x4510 | entry0 ();
0x000045e4 nop |
0x000045e8 addiu v0, zero, 1 | v0 = 1;
0x000045ec sb v0, -0x29e0(s0) | *((s0 - 10720)) = v0;
| }
0x000045f0 lw ra, 0x1c(sp) | ra = *(var_1ch);
0x000045f4 lw s0, 0x18(sp) | s0 = *(var_18h);
0x000045f8 addiu sp, sp, 0x20 |
0x000045fc jr ra | return v0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/libssh2.so.1.0.1 @ 0x30d30 */
| #include <stdint.h>
|
; (fcn) fcn.00030d30 () | void fcn_00030d30 () {
0x00030d30 lui gp, 2 |
0x00030d34 addiu gp, gp, 0x43e0 |
0x00030d38 addu gp, gp, t9 | gp += t9;
0x00030d3c addiu sp, sp, -0xd0 |
0x00030d40 sw s1, 0xac(sp) | *(var_ach) = s1;
0x00030d44 lw s1, -0x7cd4(gp) | s1 = *((gp - 7989));
0x00030d48 sw s2, 0xb0(sp) | *(var_b0h) = s2;
0x00030d4c lw s2, 0xe0(sp) | s2 = *(arg_e0h);
0x00030d50 lw v0, (s1) | v0 = *(s1);
0x00030d54 sw gp, 0x20(sp) | *(var_20h) = gp;
0x00030d58 sw s5, 0xbc(sp) | *(var_bch) = s5;
0x00030d5c sw s0, 0xa8(sp) | *(var_a8h) = s0;
0x00030d60 sw ra, 0xcc(sp) | *(var_cch) = ra;
0x00030d64 sw fp, 0xc8(sp) | *(var_c8h) = fp;
0x00030d68 sw s7, 0xc4(sp) | *(var_c4h) = s7;
0x00030d6c sw s6, 0xc0(sp) | *(var_c0h) = s6;
0x00030d70 sw s4, 0xb8(sp) | *(var_b8h) = s4;
0x00030d74 sw s3, 0xb4(sp) | *(var_b4h) = s3;
0x00030d78 move s0, a0 | s0 = a0;
0x00030d7c move s5, a1 | s5 = a1;
0x00030d80 sw v0, 0xa4(sp) | *(var_a4h) = v0;
0x00030d84 sw zero, 0x44(sp) | *(var_44h) = 0;
0x00030d88 sw zero, 0x48(sp) | *(var_48h) = 0;
0x00030d8c sw zero, 0x4c(sp) | *(var_4ch) = 0;
0x00030d90 sw zero, 0x50(sp) | *(var_50h) = 0;
0x00030d94 sw zero, 0x54(sp) | *(var_54h) = 0;
0x00030d98 sw zero, 0x5c(sp) | *(var_5ch) = 0;
0x00030d9c sw zero, 0x60(sp) | *(var_60h) = 0;
0x00030da0 sw zero, 0x64(sp) | *(var_64h) = 0;
0x00030da4 sw zero, 0x68(sp) | *(var_68h) = 0;
0x00030da8 sw zero, 0x6c(sp) | *(var_6ch) = 0;
0x00030dac sw zero, 0x70(sp) | *(var_70h) = 0;
| if (s2 != 0) {
0x00030db0 beqz s2, 0x30db8 |
0x00030db4 sw zero, (s2) | *(s2) = 0;
| }
0x00030db8 lw t9, -0x7cc4(gp) | t9 = *((gp - 7985));
0x00030dbc sw a3, 0x10(sp) | *(var_10h) = a3;
0x00030dc0 addiu a1, sp, 0x60 | a1 = sp + 0x60;
0x00030dc4 move a3, a2 | a3 = a2;
0x00030dc8 move a0, s0 | a0 = s0;
0x00030dcc addiu a2, sp, 0x64 | a2 = sp + 0x64;
0x00030dd0 jalr t9 | t9 ();
0x00030dd4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030dd8 bnez v0, 0x31258 | goto label_8;
| }
0x00030ddc lw v0, 0x64(sp) | v0 = *(var_64h);
0x00030de0 lw s3, 0x60(sp) | s3 = *(var_60h);
0x00030de4 sltiu v1, v0, 0xe | v1 = (v0 < 0xe) ? 1 : 0;
0x00030de8 sw s3, 0x80(sp) | *(var_80h) = s3;
0x00030dec sw s3, 0x84(sp) | *(var_84h) = s3;
0x00030df0 sw v0, 0x88(sp) | *(var_88h) = v0;
| if (v1 != 0) {
0x00030df4 bnez v1, 0x30fbc | goto label_9;
| }
0x00030df8 lw a1, -0x7f74(gp) | a1 = *((gp - 8157));
0x00030dfc lw t9, -0x7d90(gp) | t9 = *((gp - 8036));
0x00030e00 addiu a2, zero, 0xe | a2 = 0xe;
0x00030e04 addiu a1, a1, -0x4df8 | a1 += -0x4df8;
0x00030e08 move a0, s3 | a0 = s3;
0x00030e0c jalr t9 | t9 ();
0x00030e10 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030e14 bnez v0, 0x30fac | goto label_10;
| }
0x00030e18 lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
0x00030e1c addiu s6, sp, 0x6c | s6 = sp + 0x6c;
0x00030e20 addiu s4, sp, 0x80 | s4 = sp + 0x80;
0x00030e24 addiu s3, s3, 0xf | s3 += 0xf;
0x00030e28 move a2, s6 | a2 = s6;
0x00030e2c addiu a1, sp, 0x44 | a1 = sp + 0x44;
0x00030e30 move a0, s4 | a0 = s4;
0x00030e34 sw s3, 0x84(sp) | *(var_84h) = s3;
0x00030e38 bal 0x14fe4 | fcn_00014fe4 ();
0x00030e3c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00030e40 bnez v0, 0x30f24 |
0x00030e44 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00030e48 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| if (v0 != 0) {
0x00030e4c beqz v0, 0x30f28 |
0x00030e50 lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
0x00030e54 move a2, s6 | a2 = s6;
0x00030e58 addiu a1, sp, 0x48 | a1 = sp + 0x48;
0x00030e5c move a0, s4 | a0 = s4;
0x00030e60 bal 0x14fe4 | fcn_00014fe4 ();
0x00030e64 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030e68 bnez v0, 0x30fcc | goto label_11;
| }
0x00030e6c lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00030e70 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| if (v0 == 0) {
0x00030e74 beqz v0, 0x30fd0 | goto label_12;
| }
0x00030e78 lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
0x00030e7c addiu a2, sp, 0x68 | a2 = sp + 0x68;
0x00030e80 addiu a1, sp, 0x4c | a1 = sp + 0x4c;
0x00030e84 move a0, s4 | a0 = s4;
0x00030e88 bal 0x14fe4 | fcn_00014fe4 ();
0x00030e8c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030e90 bnez v0, 0x31040 | goto label_13;
| }
0x00030e94 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x00030e98 sw v0, 0x98(sp) | *(var_98h) = v0;
0x00030e9c sw v0, 0x9c(sp) | *(var_9ch) = v0;
0x00030ea0 lw v0, 0x68(sp) | v0 = *(var_68h);
0x00030ea4 sw v0, 0xa0(sp) | *(var_a0h) = v0;
| if (s5 == 0) {
0x00030ea8 beqz s5, 0x30fdc | goto label_14;
| }
0x00030eac lb v0, (s5) | v0 = *(s5);
0x00030eb0 lw s3, -0x7fcc(gp) | s3 = *((gp - 8179));
| if (v0 == 0) {
0x00030eb4 beqz v0, 0x30fe0 | goto label_15;
| }
0x00030eb8 lw s7, 0x48(sp) | s7 = *(var_48h);
0x00030ebc lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x00030ec0 addiu a1, s3, 0x65c4 | a1 = s3 + 0x65c4;
0x00030ec4 move a0, s7 | a0 = s7;
0x00030ec8 jalr t9 | t9 ();
0x00030ecc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030ed0 bnez v0, 0x31014 | goto label_16;
| }
0x00030ed4 lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x00030ed8 lw a0, 0x44(sp) | a0 = *(var_44h);
0x00030edc addiu a1, s3, 0x65c4 | a1 = s3 + 0x65c4;
0x00030ee0 jalr t9 | t9 ();
0x00030ee4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030ee8 bnez v0, 0x31270 | goto label_17;
| }
| label_1:
0x00030eec lw t9, -0x7f0c(gp) | t9 = *((gp - 8131));
0x00030ef0 addiu a1, sp, 0x58 | a1 = sp + 0x58;
0x00030ef4 move a0, s4 | a0 = s4;
0x00030ef8 bal 0x14ef0 | fcn_00014ef0 ();
0x00030efc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00030f00 bnez v0, 0x30f14 |
0x00030f04 lw v1, 0x58(sp) | v1 = *(var_58h);
0x00030f08 addiu v0, zero, 1 | v0 = 1;
| if (v1 == v0) {
0x00030f0c beql v1, v0, 0x31050 | goto label_18;
| }
0x00030f10 lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
| }
0x00030f14 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00030f18 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00030f1c addiu a2, a2, -0x4d6c | a2 += -0x4d6c;
0x00030f20 b 0x30f30 |
| } else {
0x00030f24 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| }
0x00030f28 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00030f2c addiu a2, a2, -0x4dd0 | a2 += -0x4dd0;
| }
| do {
| label_0:
0x00030f30 addiu a1, zero, -0xe | a1 = -0xe;
0x00030f34 move a0, s0 | a0 = s0;
0x00030f38 bal 0x145ac | fcn_000145ac ();
0x00030f3c lw gp, 0x20(sp) | gp = *(var_20h);
0x00030f40 move fp, v0 | fp = v0;
| label_2:
0x00030f44 lw a0, 0x60(sp) | a0 = *(var_60h);
0x00030f48 lw t9, -0x7ed4(gp) | t9 = *((gp - 8117));
| if (a0 != 0) {
0x00030f4c beqz a0, 0x30f6c |
0x00030f50 lw a1, 0x64(sp) | a1 = *(var_64h);
0x00030f54 bal 0x14e24 | fcn_00014e24 ();
0x00030f58 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x00030f5c lw a0, 0x60(sp) | a0 = *(var_60h);
0x00030f60 move a1, s0 | a1 = s0;
0x00030f64 jalr t9 | t9 ();
0x00030f68 lw gp, 0x20(sp) | gp = *(var_20h);
| }
0x00030f6c lw a0, 0xa4(sp) | a0 = *(var_a4h);
0x00030f70 lw v1, (s1) | v1 = *(s1);
0x00030f74 move v0, fp | v0 = fp;
| if (a0 != v1) {
0x00030f78 bne a0, v1, 0x3157c | goto label_19;
| }
0x00030f7c lw ra, 0xcc(sp) | ra = *(var_cch);
0x00030f80 lw fp, 0xc8(sp) | fp = *(var_c8h);
0x00030f84 lw s7, 0xc4(sp) | s7 = *(var_c4h);
0x00030f88 lw s6, 0xc0(sp) | s6 = *(var_c0h);
0x00030f8c lw s5, 0xbc(sp) | s5 = *(var_bch);
0x00030f90 lw s4, 0xb8(sp) | s4 = *(var_b8h);
0x00030f94 lw s3, 0xb4(sp) | s3 = *(var_b4h);
0x00030f98 lw s2, 0xb0(sp) | s2 = *(var_b0h);
0x00030f9c lw s1, 0xac(sp) | s1 = *(var_ach);
0x00030fa0 lw s0, 0xa8(sp) | s0 = *(var_a8h);
0x00030fa4 addiu sp, sp, 0xd0 |
0x00030fa8 jr ra | return v1;
| label_10:
0x00030fac lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00030fb0 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00030fb4 addiu a2, a2, -0x4de8 | a2 += -0x4de8;
0x00030fb8 b 0x30f30 |
| } while (1);
| label_9:
0x00030fbc lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00030fc0 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00030fc4 addiu a2, a2, -0x4e08 | a2 += -0x4e08;
0x00030fc8 b 0x30f30 | goto label_0;
| label_11:
0x00030fcc lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| label_12:
0x00030fd0 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00030fd4 addiu a2, a2, -0x4db8 | a2 += -0x4db8;
0x00030fd8 b 0x30f30 | goto label_0;
| label_14:
0x00030fdc lw s3, -0x7fcc(gp) | s3 = *((gp - 8179));
| label_15:
0x00030fe0 lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x00030fe4 lw a0, 0x44(sp) | a0 = *(var_44h);
0x00030fe8 addiu a1, s3, 0x65c4 | a1 = s3 + 0x65c4;
0x00030fec jalr t9 | t9 ();
0x00030ff0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00030ff4 bnez v0, 0x31574 | goto label_20;
| }
0x00030ff8 lw s7, 0x48(sp) | s7 = *(var_48h);
0x00030ffc lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x00031000 addiu a1, s3, 0x65c4 | a1 = s3 + 0x65c4;
0x00031004 move a0, s7 | a0 = s7;
0x00031008 jalr t9 | t9 ();
0x0003100c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00031010 beqz v0, 0x30eec | goto label_1;
| }
| label_16:
0x00031014 lw a1, -0x7f74(gp) | a1 = *((gp - 8157));
0x00031018 lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x0003101c addiu a1, a1, -0x4d94 | a1 += -0x4d94;
0x00031020 move a0, s7 | a0 = s7;
0x00031024 jalr t9 | t9 ();
0x00031028 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0003102c beqz v0, 0x30eec | goto label_1;
| }
0x00031030 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031034 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031038 addiu a2, a2, -0x4d8c | a2 += -0x4d8c;
0x0003103c b 0x30f30 | goto label_0;
| label_13:
0x00031040 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031044 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031048 addiu a2, a2, -0x4da4 | a2 += -0x4da4;
0x0003104c b 0x30f30 | goto label_0;
| label_18:
0x00031050 addiu s7, sp, 0x50 | s7 = sp + 0x50;
0x00031054 move a2, s6 | a2 = s6;
0x00031058 move a1, s7 | a1 = s7;
0x0003105c move a0, s4 | a0 = s4;
0x00031060 bal 0x14fe4 | fcn_00014fe4 ();
0x00031064 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00031068 bnez v0, 0x31260 | goto label_21;
| }
0x0003106c lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00031070 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| if (v0 == 0) {
0x00031074 beqz v0, 0x31264 | goto label_22;
| }
0x00031078 lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
0x0003107c move a2, s6 | a2 = s6;
0x00031080 move a1, s7 | a1 = s7;
0x00031084 move a0, s4 | a0 = s4;
0x00031088 bal 0x14fe4 | fcn_00014fe4 ();
0x0003108c move s6, v0 | s6 = v0;
0x00031090 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00031094 bnez v0, 0x31280 | goto label_23;
| }
0x00031098 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x0003109c lw v1, 0x50(sp) | v1 = *(var_50h);
| if (v0 == 0) {
0x000310a0 beqz v0, 0x31280 | goto label_23;
| }
0x000310a4 lw s4, 0x44(sp) | s4 = *(var_44h);
0x000310a8 sw v1, 0x90(sp) | *(var_90h) = v1;
0x000310ac sw v1, 0x8c(sp) | *(var_8ch) = v1;
0x000310b0 sw v0, 0x94(sp) | *(var_94h) = v0;
| if (s4 == 0) {
0x000310b4 beqz s4, 0x31558 | goto label_24;
| }
0x000310b8 lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x000310bc addiu a1, s3, 0x65c4 | a1 = s3 + 0x65c4;
0x000310c0 move a0, s4 | a0 = s4;
0x000310c4 jalr t9 | t9 ();
0x000310c8 move s6, v0 | s6 = v0;
0x000310cc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x000310d0 bnez v0, 0x31290 | goto label_25;
| }
0x000310d4 addiu v0, sp, 0x78 | v0 = sp + 0x78;
0x000310d8 move v1, zero | v1 = 0;
0x000310dc move s7, zero | s7 = 0;
0x000310e0 move s5, zero | s5 = 0;
0x000310e4 move s3, zero | s3 = 0;
0x000310e8 move s4, zero | s4 = 0;
0x000310ec sw v0, 0x2c(sp) | *(var_2ch) = v0;
| label_4:
0x000310f0 lw t9, -0x7f0c(gp) | t9 = *((gp - 8131));
0x000310f4 addiu fp, sp, 0x8c | fp = sp + 0x8c;
0x000310f8 lw a1, 0x2c(sp) | a1 = *(var_2ch);
0x000310fc sw v1, 0x30(sp) | *(var_30h) = v1;
0x00031100 move a0, fp | a0 = fp;
0x00031104 bal 0x14ef0 | fcn_00014ef0 ();
0x00031108 lw gp, 0x20(sp) | gp = *(var_20h);
0x0003110c lw v1, 0x30(sp) | v1 = *(var_30h);
| if (v0 != 0) {
0x00031110 bnez v0, 0x3162c | goto label_26;
| }
0x00031114 lw t9, -0x7f0c(gp) | t9 = *((gp - 8131));
0x00031118 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x0003111c move a0, fp | a0 = fp;
0x00031120 addiu a1, sp, 0x7c | a1 = sp + 0x7c;
0x00031124 bal 0x14ef0 | fcn_00014ef0 ();
0x00031128 move fp, v0 | fp = v0;
0x0003112c lw gp, 0x20(sp) | gp = *(var_20h);
0x00031130 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 != 0) {
0x00031134 bnez v0, 0x3162c | goto label_26;
| }
0x00031138 lw a0, 0x78(sp) | a0 = *(var_78h);
0x0003113c lw v0, 0x7c(sp) | v0 = *(var_7ch);
0x00031140 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| if (a0 != v0) {
0x00031144 bne a0, v0, 0x31630 | goto label_27;
| }
0x00031148 lw t9, -0x7e2c(gp) | t9 = *((gp - 8075));
| if (s2 != 0) {
0x0003114c beqz s2, 0x311dc |
0x00031150 move a0, s0 | a0 = s0;
0x00031154 bal 0x14e48 | fcn_00014e48 ();
0x00031158 lw gp, 0x20(sp) | gp = *(var_20h);
0x0003115c lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 == 0) {
0x00031160 beqz v0, 0x31588 | goto label_28;
| }
0x00031164 lw t9, -0x7fa8(gp) | t9 = *((gp - 8170));
0x00031168 lw a1, 0x94(sp) | a1 = *(var_94h);
0x0003116c sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031170 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00031174 move a0, s0 | a0 = s0;
0x00031178 bal 0x14d54 | fcn_00014d54 ();
0x0003117c lw a3, 0x30(sp) | a3 = *(var_30h);
0x00031180 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031184 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x00031188 sw v0, (a3) | *(a3) = v0;
| if (v0 == 0) {
0x0003118c beqz v0, 0x31658 | goto label_29;
| }
0x00031190 lw t9, -0x7c98(gp) | t9 = *((gp - 7974));
0x00031194 lw a1, 0x8c(sp) | a1 = *(var_8ch);
0x00031198 lw a2, 0x94(sp) | a2 = *(var_94h);
0x0003119c sw a3, 0x30(sp) | *(var_30h) = a3;
0x000311a0 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x000311a4 move a0, v0 | a0 = v0;
0x000311a8 jalr t9 | t9 ();
0x000311ac lw a3, 0x30(sp) | a3 = *(var_30h);
0x000311b0 lw a0, 0x90(sp) | a0 = *(var_90h);
0x000311b4 lw a1, 0x8c(sp) | a1 = *(var_8ch);
0x000311b8 lw v0, (a3) | v0 = *(a3);
0x000311bc subu a0, a0, a1 | __asm ("subu a0, a0, a1");
0x000311c0 lw a1, 0x94(sp) | a1 = *(var_94h);
0x000311c4 addu v0, v0, a0 | v0 += a0;
0x000311c8 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x000311cc lw gp, 0x20(sp) | gp = *(var_20h);
0x000311d0 sw v0, 4(a3) | *((a3 + 1)) = v0;
0x000311d4 sw a1, 8(a3) | *((a3 + 2)) = a1;
0x000311d8 sw a3, (s2) | *(s2) = a3;
| }
| label_5:
0x000311dc lw t9, -0x7ed4(gp) | t9 = *((gp - 8117));
| if (s4 != 0) {
0x000311e0 beqz s4, 0x31204 |
0x000311e4 move a1, v1 | a1 = v1;
0x000311e8 move a0, s4 | a0 = s4;
0x000311ec bal 0x14e24 | fcn_00014e24 ();
0x000311f0 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x000311f4 move a1, s0 | a1 = s0;
0x000311f8 move a0, s4 | a0 = s4;
0x000311fc jalr t9 | t9 ();
0x00031200 lw gp, 0x20(sp) | gp = *(var_20h);
| }
0x00031204 lw t9, -0x7ed4(gp) | t9 = *((gp - 8117));
| if (s3 != 0) {
0x00031208 beqz s3, 0x3122c |
0x0003120c move a1, s6 | a1 = s6;
0x00031210 move a0, s3 | a0 = s3;
0x00031214 bal 0x14e24 | fcn_00014e24 ();
0x00031218 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x0003121c move a1, s0 | a1 = s0;
0x00031220 move a0, s3 | a0 = s3;
0x00031224 jalr t9 | t9 ();
0x00031228 lw gp, 0x20(sp) | gp = *(var_20h);
| }
0x0003122c lw t9, -0x7ed4(gp) | t9 = *((gp - 8117));
| if (s5 == 0) {
0x00031230 beqz s5, 0x30f44 | goto label_2;
| }
0x00031234 move a1, s7 | a1 = s7;
0x00031238 move a0, s5 | a0 = s5;
0x0003123c bal 0x14e24 | fcn_00014e24 ();
0x00031240 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x00031244 move a1, s0 | a1 = s0;
0x00031248 move a0, s5 | a0 = s5;
0x0003124c jalr t9 | t9 ();
0x00031250 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031254 b 0x30f44 | goto label_2;
| label_8:
0x00031258 addiu fp, zero, -1 | fp = -1;
0x0003125c b 0x30f44 | goto label_2;
| label_21:
0x00031260 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| label_22:
0x00031264 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031268 addiu a2, a2, -0x4d4c | a2 += -0x4d4c;
0x0003126c b 0x30f30 | goto label_0;
| label_17:
0x00031270 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031274 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031278 addiu a2, a2, -0x4d7c | a2 += -0x4d7c;
0x0003127c b 0x30f30 | goto label_0;
| label_23:
0x00031280 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031284 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031288 addiu a2, a2, -0x4d1c | a2 += -0x4d1c;
0x0003128c b 0x30f30 | goto label_0;
| label_25:
0x00031290 lw t9, -0x7d2c(gp) | t9 = *((gp - 8011));
0x00031294 move fp, zero | fp = 0;
0x00031298 jalr t9 | t9 ();
0x0003129c lw gp, 0x20(sp) | gp = *(var_20h);
0x000312a0 lw s7, 0x44(sp) | s7 = *(var_44h);
0x000312a4 move s3, v0 | s3 = v0;
0x000312a8 addiu s3, s3, 4 | s3 += 4;
| do {
0x000312ac lw s4, -4(s3) | s4 = *((s3 - 1));
| if (s4 == 0) {
0x000312b0 beqz s4, 0x31300 | goto label_30;
| }
0x000312b4 nop |
| label_3:
0x000312b8 lw s6, (s4) | s6 = *(s4);
0x000312bc lb v0, (s6) | v0 = *(s6);
0x000312c0 beql v0, zero, 0x312ac |
| } while (v0 == 0);
0x000312c4 addiu s3, s3, 4 | s3 += 4;
0x000312c8 lw t9, -0x7c9c(gp) | t9 = *((gp - 7975));
0x000312cc move a0, s6 | a0 = s6;
0x000312d0 jalr t9 | t9 ();
0x000312d4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000312d8 move a2, v0 | a2 = v0;
0x000312dc move a1, s6 | a1 = s6;
0x000312e0 lw t9, -0x7b4c(gp) | t9 = *((gp - 7891));
0x000312e4 move a0, s7 | a0 = s7;
0x000312e8 addiu s3, s3, 4 | s3 += 4;
0x000312ec jalr t9 | t9 ();
| if (v0 != 0) {
0x000312f0 movz fp, s4, v0 | fp = s4;
| }
0x000312f4 lw s4, -4(s3) | s4 = *((s3 - 1));
0x000312f8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (s4 != 0) {
0x000312fc bnez s4, 0x312b8 | goto label_3;
| }
| label_30:
0x00031300 move a0, s0 | a0 = s0;
| if (fp == 0) {
0x00031304 beqz fp, 0x3161c | goto label_31;
| }
0x00031308 sw zero, 0x78(sp) | *(var_78h) = 0;
0x0003130c lw s6, 0x10(fp) | s6 = *(arg_e0h);
0x00031310 lw s7, 0xc(fp) | s7 = *(arg_ch);
0x00031314 lw t9, -0x7fa8(gp) | t9 = *((gp - 8170));
0x00031318 addu v1, s6, s7 | v1 = s6 + s7;
0x0003131c move a1, v1 | a1 = v1;
0x00031320 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031324 sw zero, 0x74(sp) | *(var_74h) = 0;
0x00031328 sw zero, 0x7c(sp) | *(var_7ch) = 0;
0x0003132c bal 0x14d54 | fcn_00014d54 ();
0x00031330 move s4, v0 | s4 = v0;
0x00031334 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031338 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 == 0) {
0x0003133c beqz v0, 0x3160c | goto label_32;
| }
0x00031340 lw a1, -0x7f74(gp) | a1 = *((gp - 8157));
0x00031344 lw t9, -0x7ddc(gp) | t9 = *((gp - 8055));
0x00031348 lw a0, 0x48(sp) | a0 = *(var_48h);
0x0003134c sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031350 addiu a1, a1, -0x4d94 | a1 += -0x4d94;
0x00031354 jalr t9 | t9 ();
0x00031358 lw gp, 0x20(sp) | gp = *(var_20h);
0x0003135c lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 != 0) {
0x00031360 bnez v0, 0x315f4 | goto label_33;
| }
0x00031364 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| if (s5 == 0) {
0x00031368 beqz s5, 0x315f8 | goto label_34;
| }
0x0003136c lw t9, -0x7f44(gp) | t9 = *((gp - 8145));
0x00031370 addiu s3, sp, 0x98 | s3 = sp + 0x98;
0x00031374 addiu a2, sp, 0x70 | a2 = sp + 0x70;
0x00031378 addiu a1, sp, 0x54 | a1 = sp + 0x54;
0x0003137c move a0, s3 | a0 = s3;
0x00031380 bal 0x14fe4 | fcn_00014fe4 ();
0x00031384 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031388 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 != 0) {
0x0003138c bnez v0, 0x315b0 | goto label_35;
| }
0x00031390 lw t9, -0x7f0c(gp) | t9 = *((gp - 8131));
0x00031394 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031398 addiu a1, sp, 0x5c | a1 = sp + 0x5c;
0x0003139c move a0, s3 | a0 = s3;
0x000313a0 bal 0x14ef0 | fcn_00014ef0 ();
0x000313a4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000313a8 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 != 0) {
0x000313ac bnez v0, 0x315b0 | goto label_35;
| }
0x000313b0 lw t9, -0x7c9c(gp) | t9 = *((gp - 7975));
0x000313b4 move a0, s5 | a0 = s5;
0x000313b8 jalr t9 | t9 ();
0x000313bc lw gp, 0x20(sp) | gp = *(var_20h);
0x000313c0 lw a0, 0x5c(sp) | a0 = *(var_5ch);
0x000313c4 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x000313c8 lw a3, 0x70(sp) | a3 = *(var_70h);
0x000313cc lw t9, -0x7e28(gp) | t9 = *((gp - 8074));
0x000313d0 lw a2, 0x54(sp) | a2 = *(var_54h);
0x000313d4 sw a0, 0x18(sp) | *(var_18h) = a0;
0x000313d8 sw v1, 0x14(sp) | *(var_14h) = v1;
0x000313dc sw s4, 0x10(sp) | *(var_10h) = s4;
0x000313e0 move a1, v0 | a1 = v0;
0x000313e4 move a0, s5 | a0 = s5;
0x000313e8 bal 0x15370 | fcn_00015370 ();
0x000313ec lw gp, 0x20(sp) | gp = *(var_20h);
0x000313f0 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 < 0) {
0x000313f4 bltz v0, 0x31704 | goto label_36;
| }
0x000313f8 lw v0, 8(fp) | v0 = *(arg_8h);
0x000313fc lw t9, -0x7fa8(gp) | t9 = *((gp - 8170));
0x00031400 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031404 move a1, s6 | a1 = s6;
0x00031408 move a0, s0 | a0 = s0;
0x0003140c sw v0, 0x30(sp) | *(var_30h) = v0;
0x00031410 bal 0x14d54 | fcn_00014d54 ();
0x00031414 move s3, v0 | s3 = v0;
0x00031418 lw gp, 0x20(sp) | gp = *(var_20h);
0x0003141c lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 == 0) {
0x00031420 beqz v0, 0x316d8 | goto label_37;
| }
0x00031424 lw t9, -0x7fa8(gp) | t9 = *((gp - 8170));
0x00031428 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x0003142c move a1, s7 | a1 = s7;
0x00031430 move a0, s0 | a0 = s0;
0x00031434 bal 0x14d54 | fcn_00014d54 ();
0x00031438 move s5, v0 | s5 = v0;
0x0003143c lw gp, 0x20(sp) | gp = *(var_20h);
0x00031440 lw v1, 0x2c(sp) | v1 = *(var_2ch);
| if (v0 == 0) {
0x00031444 beqz v0, 0x316c4 | goto label_38;
| }
0x00031448 lw t9, -0x7c98(gp) | t9 = *((gp - 7974));
0x0003144c sw v1, 0x38(sp) | *(var_38h) = v1;
0x00031450 move a2, s6 | a2 = s6;
0x00031454 move a1, s4 | a1 = s4;
0x00031458 move a0, s3 | a0 = s3;
0x0003145c jalr t9 | t9 ();
0x00031460 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031464 addiu t0, sp, 0x7c | t0 = sp + 0x7c;
0x00031468 addiu v0, sp, 0x78 | v0 = sp + 0x78;
0x0003146c lw t9, -0x7c98(gp) | t9 = *((gp - 7974));
0x00031470 move a2, s7 | a2 = s7;
0x00031474 addu a1, s4, s6 | a1 = s4 + s6;
0x00031478 move a0, s5 | a0 = s5;
0x0003147c sw t0, 0x34(sp) | *(var_34h) = t0;
0x00031480 sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00031484 jalr t9 | t9 ();
0x00031488 lw t0, 0x34(sp) | t0 = *(var_34h);
0x0003148c lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x00031490 sw t0, 0x1c(sp) | *(var_1ch) = t0;
0x00031494 sw zero, 0x18(sp) | *(var_18h) = 0;
0x00031498 sw v0, 0x14(sp) | *(var_14h) = v0;
0x0003149c sw s3, 0x10(sp) | *(var_10h) = s3;
0x000314a0 lw t9, 0x18(fp) | t9 = *(arg_18h);
0x000314a4 addiu a3, sp, 0x74 | a3 = sp + 0x74;
0x000314a8 move a2, s5 | a2 = s5;
0x000314ac move a1, fp | a1 = fp;
0x000314b0 move a0, s0 | a0 = s0;
0x000314b4 jalr t9 | t9 ();
0x000314b8 move t1, v0 | t1 = v0;
0x000314bc lw gp, 0x20(sp) | gp = *(var_20h);
0x000314c0 lw v1, 0x38(sp) | v1 = *(var_38h);
| if (v0 != 0) {
0x000314c4 bnez v0, 0x316bc | goto label_39;
| }
0x000314c8 lw v0, 0x94(sp) | v0 = *(var_94h);
0x000314cc lw a0, 0x30(sp) | a0 = *(var_30h);
0x000314d0 divu zero, v0, a0 | __asm ("divu zero, v0, a0");
0x000314d4 teq a0, zero, 7 | __asm ("teq a0, zero, 7");
0x000314d8 mfhi v0 | __asm ("mfhi v0");
0x000314dc lw t0, 0x34(sp) | t0 = *(var_34h);
| if (v0 != 0) {
0x000314e0 bnez v0, 0x31698 | goto label_40;
| }
0x000314e4 lw a1, 0x8c(sp) | a1 = *(var_8ch);
| do {
0x000314e8 lw t9, 0x1c(fp) | t9 = *(arg_1ch);
0x000314ec lw a2, 0x30(sp) | a2 = *(var_30h);
0x000314f0 sw v1, 0x3c(sp) | *(var_3ch) = v1;
0x000314f4 move a3, t0 | a3 = t0;
0x000314f8 sw t0, 0x38(sp) | *(var_38h) = t0;
0x000314fc addu a1, a1, t1 | a1 += t1;
0x00031500 sw t1, 0x34(sp) | *(var_34h) = t1;
0x00031504 move a0, s0 | a0 = s0;
0x00031508 jalr t9 | t9 ();
0x0003150c lw t1, 0x34(sp) | t1 = *(var_34h);
0x00031510 lw t0, 0x38(sp) | t0 = *(var_38h);
0x00031514 lw v1, 0x3c(sp) | v1 = *(var_3ch);
| if (v0 != 0) {
0x00031518 bnez v0, 0x31698 | goto label_40;
| }
0x0003151c lw a0, 0x30(sp) | a0 = *(var_30h);
0x00031520 lw v0, 0x94(sp) | v0 = *(var_94h);
0x00031524 addu t1, t1, a0 | t1 += a0;
0x00031528 subu v0, v0, a0 | __asm ("subu v0, v0, a0");
0x0003152c sltu v0, v0, t1 | v0 = (v0 < t1) ? 1 : 0;
0x00031530 lw a1, 0x8c(sp) | a1 = *(var_8ch);
0x00031534 beqz v0, 0x314e8 |
| } while (v0 == 0);
0x00031538 lw t9, 0x20(fp) | t9 = *(arg_20h);
0x0003153c sw v1, 0x30(sp) | *(var_30h) = v1;
0x00031540 move a1, t0 | a1 = t0;
0x00031544 move a0, s0 | a0 = s0;
0x00031548 jalr t9 | t9 ();
0x0003154c lw gp, 0x20(sp) | gp = *(var_20h);
0x00031550 lw v1, 0x30(sp) | v1 = *(var_30h);
0x00031554 b 0x310f0 | goto label_4;
| label_24:
0x00031558 addiu v0, sp, 0x78 | v0 = sp + 0x78;
0x0003155c move v1, zero | v1 = 0;
0x00031560 move s7, zero | s7 = 0;
0x00031564 move s5, zero | s5 = 0;
0x00031568 move s3, zero | s3 = 0;
0x0003156c sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00031570 b 0x310f0 | goto label_4;
| label_20:
0x00031574 addiu fp, zero, -0x30 | fp = -0x30;
0x00031578 b 0x30f44 | goto label_2;
| label_19:
0x0003157c lw t9, -0x7d10(gp) | t9 = *((gp - 8004));
0x00031580 jalr t9 | t9 ();
0x00031584 nop |
| label_28:
0x00031588 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x0003158c lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031590 addiu a2, a2, -0x4c30 | a2 += -0x4c30;
0x00031594 addiu a1, zero, -6 | a1 = -6;
| label_6:
0x00031598 move a0, s0 | a0 = s0;
0x0003159c bal 0x145ac | fcn_000145ac ();
0x000315a0 move fp, v0 | fp = v0;
0x000315a4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000315a8 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x000315ac b 0x311dc | goto label_5;
| label_35:
0x000315b0 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x000315b4 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x000315b8 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x000315bc addiu a2, a2, -0x4cd0 | a2 += -0x4cd0;
0x000315c0 addiu a1, zero, -0xe | a1 = -0xe;
| do {
| label_7:
0x000315c4 move a0, s0 | a0 = s0;
0x000315c8 bal 0x145ac | fcn_000145ac ();
0x000315cc lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x000315d0 move a1, s0 | a1 = s0;
0x000315d4 move a0, s4 | a0 = s4;
0x000315d8 move fp, v0 | fp = v0;
0x000315dc move s5, zero | s5 = 0;
0x000315e0 jalr t9 | t9 ();
0x000315e4 move s3, zero | s3 = 0;
0x000315e8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000315ec lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x000315f0 b 0x311dc | goto label_5;
| label_33:
0x000315f4 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| label_34:
0x000315f8 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x000315fc lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031600 addiu a2, a2, -0x4cb0 | a2 += -0x4cb0;
0x00031604 addiu a1, zero, -0x30 | a1 = -0x30;
0x00031608 b 0x315c4 |
| } while (1);
| label_32:
0x0003160c lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031610 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031614 addiu a2, a2, -0x4ce4 | a2 += -0x4ce4;
0x00031618 b 0x30f30 | goto label_0;
| label_31:
0x0003161c lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031620 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031624 addiu a2, a2, -0x4d00 | a2 += -0x4d00;
0x00031628 b 0x30f30 | goto label_0;
| label_26:
0x0003162c lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
| label_27:
0x00031630 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031634 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00031638 addiu a2, a2, -0x4c60 | a2 += -0x4c60;
0x0003163c addiu a1, zero, -0xe | a1 = -0xe;
0x00031640 move a0, s0 | a0 = s0;
0x00031644 bal 0x145ac | fcn_000145ac ();
0x00031648 addiu fp, zero, -0x30 | fp = -0x30;
0x0003164c lw gp, 0x20(sp) | gp = *(var_20h);
0x00031650 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x00031654 b 0x311dc | goto label_5;
| label_29:
0x00031658 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x0003165c lw t9, -0x7fd0(gp) | t9 = *(gp);
0x00031660 addiu a2, a2, -0x4c30 | a2 += -0x4c30;
0x00031664 addiu a1, zero, -6 | a1 = -6;
0x00031668 move a0, s0 | a0 = s0;
0x0003166c bal 0x145ac | fcn_000145ac ();
0x00031670 lw gp, 0x20(sp) | gp = *(var_20h);
0x00031674 lw a3, 0x30(sp) | a3 = *(var_30h);
0x00031678 move a0, s0 | a0 = s0;
0x0003167c lw t9, -0x7e48(gp) | t9 = *((gp - 8082));
0x00031680 move a1, a3 | a1 = a3;
0x00031684 move fp, v0 | fp = v0;
0x00031688 bal 0x14e60 | fcn_00014e60 ();
0x0003168c lw gp, 0x20(sp) | gp = *(var_20h);
0x00031690 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x00031694 b 0x311dc | goto label_5;
| label_40:
0x00031698 lw t9, 0x20(fp) | t9 = *(arg_20h);
0x0003169c sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x000316a0 move a1, t0 | a1 = t0;
0x000316a4 move a0, s0 | a0 = s0;
0x000316a8 jalr t9 | t9 ();
0x000316ac addiu fp, zero, -0xc | fp = -0xc;
0x000316b0 lw gp, 0x20(sp) | gp = *(var_20h);
0x000316b4 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x000316b8 b 0x311dc | goto label_5;
| label_39:
0x000316bc addiu fp, zero, -0xc | fp = -0xc;
0x000316c0 b 0x311dc | goto label_5;
| label_38:
0x000316c4 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x000316c8 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x000316cc addiu a2, a2, -0x4c78 | a2 += -0x4c78;
0x000316d0 addiu a1, zero, -0xe | a1 = -0xe;
0x000316d4 b 0x31598 | goto label_6;
| label_37:
0x000316d8 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x000316dc lw t9, -0x7fd0(gp) | t9 = *(gp);
0x000316e0 addiu a2, a2, -0x4c94 | a2 += -0x4c94;
0x000316e4 addiu a1, zero, -0xe | a1 = -0xe;
0x000316e8 move a0, s0 | a0 = s0;
0x000316ec bal 0x145ac | fcn_000145ac ();
0x000316f0 move fp, v0 | fp = v0;
0x000316f4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000316f8 move s5, zero | s5 = 0;
0x000316fc lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x00031700 b 0x311dc | goto label_5;
| label_36:
0x00031704 lw a2, -0x7f74(gp) | a2 = *((gp - 8157));
0x00031708 lw t9, -0x7fd0(gp) | t9 = *(gp);
0x0003170c addiu a2, a2, -0x4d7c | a2 += -0x4d7c;
0x00031710 addiu a1, zero, -0xc | a1 = -0xc;
0x00031714 b 0x315c4 | goto label_7;
| }
[*] Function mmap used 1 times libssh2.so.1.0.1