[*] Binary protection state of ptzaurus
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of ptzaurus
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/ptzaurus @ 0x4b344 */
| #include <stdint.h>
|
; (fcn) sym.ptz_driver_param_legacy_config_register_driver_params () | void ptz_driver_param_legacy_config_register_driver_params () {
0x0004b344 lui gp, 9 |
0x0004b348 addiu gp, gp, -0x7b54 |
0x0004b34c addu gp, gp, t9 | gp += t9;
0x0004b350 addiu sp, sp, -0xa0 |
0x0004b354 lw v0, 0x30(a0) | v0 = *((a0 + 12));
0x0004b358 sw fp, 0x98(sp) | *(var_98h) = fp;
0x0004b35c lw fp, -0x73dc(gp) | fp = *((gp - 7415));
0x0004b360 sw gp, 0x20(sp) | *(var_20h) = gp;
0x0004b364 sw ra, 0x9c(sp) | *(var_9ch) = ra;
0x0004b368 lw v1, (fp) | v1 = *(fp);
0x0004b36c sw s7, 0x94(sp) | *(var_94h) = s7;
0x0004b370 sw s6, 0x90(sp) | *(var_90h) = s6;
0x0004b374 sw s5, 0x8c(sp) | *(var_8ch) = s5;
0x0004b378 sw s4, 0x88(sp) | *(var_88h) = s4;
0x0004b37c sw s3, 0x84(sp) | *(var_84h) = s3;
0x0004b380 sw s2, 0x80(sp) | *(var_80h) = s2;
0x0004b384 sw s1, 0x7c(sp) | *(var_7ch) = s1;
0x0004b388 sw s0, 0x78(sp) | *(var_78h) = s0;
0x0004b38c sw v1, 0x74(sp) | *(var_74h) = v1;
0x0004b390 move v0, zero | v0 = 0;
| if (v0 == 0) {
0x0004b394 bnel v0, zero, 0x4b6a4 | goto label_14;
| }
0x0004b398 move s4, a1 | s4 = a1;
| if (a1 == 0) {
0x0004b39c beqz a1, 0x4b6a4 | goto label_14;
| }
0x0004b3a0 lw v1, 4(a1) | v1 = *((a1 + 1));
0x0004b3a4 addiu v0, zero, 1 | v0 = 1;
| if (v1 == 0) {
0x0004b3a8 beqz v1, 0x4b6a4 | goto label_14;
| }
0x0004b3ac lw v0, 0x28(a0) | v0 = *((a0 + 10));
0x0004b3b0 move s3, a0 | s3 = a0;
| if (v0 == 0) {
0x0004b3b4 beqz v0, 0x4b97c | goto label_15;
| }
| label_13:
0x0004b3b8 lw v0, -0x7f88(gp) | v0 = *(gp);
| if (v1 <= 0) {
0x0004b3bc blez v1, 0x4b6a0 | goto label_16;
| }
0x0004b3c0 lw s7, -0x7f88(gp) | s7 = *(gp);
0x0004b3c4 sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x0004b3c8 lw v0, -0x7f88(gp) | v0 = *(gp);
0x0004b3cc move s2, zero | s2 = 0;
0x0004b3d0 sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x0004b3d4 lw v0, -0x7f88(gp) | v0 = *(gp);
0x0004b3d8 move s1, zero | s1 = 0;
0x0004b3dc addiu v0, v0, 0xd4c | v0 += 0xd4c;
0x0004b3e0 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0004b3e4 lw v0, -0x7fd8(gp) | v0 = *(gp);
| /* str.true */
0x0004b3e8 addiu v0, v0, 0x7bd4 | v0 += 0x7bd4;
0x0004b3ec sw v0, 0x34(sp) | *(var_34h) = v0;
0x0004b3f0 lw v0, -0x7f88(gp) | v0 = *(gp);
| /* str.false */
0x0004b3f4 addiu v0, v0, -0x2400 | v0 += -0x2400;
0x0004b3f8 sw v0, 0x38(sp) | *(var_38h) = v0;
0x0004b3fc b 0x4b618 |
| while (v0 == 0) {
| label_0:
0x0004b400 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0004b404 lw v0, 4(s4) | v0 = *((s4 + 1));
| if (v0 != 0) {
0x0004b408 bnel v0, zero, 0x4b608 |
0x0004b40c lw a0, -0x7f88(gp) | a0 = *(gp);
0x0004b410 lw t9, -0x70b0(gp) | t9 = sym.imp.g_strdup;
0x0004b414 addiu v0, zero, 1 | v0 = 1;
0x0004b418 sw v0, 0x34(s3) | *((s3 + 13)) = v0;
| /* str.DeviceStatus */
0x0004b41c addiu a0, a0, -0x1bb4 | a0 += -0x1bb4;
0x0004b420 jalr t9 | t9 ();
0x0004b424 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b428 sw v0, 0x4c(sp) | *(var_4ch) = v0;
| label_2:
0x0004b42c lw t9, -0x70b0(gp) | t9 = sym.imp.g_strdup;
0x0004b430 lw a0, 8(s0) | a0 = *((s0 + 2));
0x0004b434 jalr t9 | t9 ();
0x0004b438 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b43c lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x0004b440 sw v0, 0x50(sp) | *(var_50h) = v0;
0x0004b444 lw t9, -0x7198(gp) | t9 = sym.imp.g_string_new;
0x0004b448 addiu a0, v1, -0x650 | a0 = v1 + -0x650;
0x0004b44c jalr t9 | t9 ();
0x0004b450 lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0004b454 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b458 andi s5, v1, 3 | s5 = v1 & 3;
0x0004b45c move s6, v0 | s6 = v0;
| if (s5 != 0) {
0x0004b460 beqz s5, 0x4b484 |
0x0004b464 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b468 lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
0x0004b46c move a2, s5 | a2 = s5;
| /* str._:_d */
0x0004b470 addiu a1, a1, -0x1a7c | a1 += -0x1a7c;
0x0004b474 move a0, v0 | a0 = v0;
0x0004b478 jalr t9 | t9 ();
0x0004b47c lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b480 lw v1, 0x10(s0) | v1 = *((s0 + 4));
| }
0x0004b484 andi v0, v1, 0x41 | v0 = v1 & 0x41;
0x0004b488 srl a2, v1, 6 | a2 = v1 >> 6;
0x0004b48c sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x0004b490 andi a2, a2, 2 | a2 &= 2;
0x0004b494 addu a2, a2, v0 | a2 += v0;
0x0004b498 slt v0, s5, a2 | v0 = (s5 < a2) ? 1 : 0;
0x0004b49c lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v0 != 0) {
0x0004b4a0 bnez v0, 0x4b820 | goto label_17;
| }
| label_10:
0x0004b4a4 andi v0, v1, 0x11 | v0 = v1 & 0x11;
0x0004b4a8 srl a2, v1, 4 | a2 = v1 >> 4;
0x0004b4ac sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x0004b4b0 andi a2, a2, 2 | a2 &= 2;
0x0004b4b4 addu a2, a2, v0 | a2 += v0;
0x0004b4b8 slt v0, s5, a2 | v0 = (s5 < a2) ? 1 : 0;
0x0004b4bc lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v0 != 0) {
0x0004b4c0 bnez v0, 0x4b804 | goto label_18;
| }
| label_9:
0x0004b4c4 srl a2, v1, 2 | a2 = v1 >> 2;
0x0004b4c8 andi v0, v1, 5 | v0 = v1 & 5;
0x0004b4cc sltu v1, zero, v0 | v1 = (0 < v0) ? 1 : 0;
0x0004b4d0 andi a2, a2, 2 | a2 &= 2;
0x0004b4d4 addu a2, a2, v1 | a2 += v1;
0x0004b4d8 slt s5, s5, a2 | s5 = (s5 < a2) ? 1 : 0;
0x0004b4dc lw a1, -0x7f88(gp) | a1 = *(gp);
| if (s5 != 0) {
0x0004b4e0 bnez s5, 0x4b7ec | goto label_19;
| }
| label_8:
0x0004b4e4 lw v0, (s6) | v0 = *(s6);
0x0004b4e8 lw t9, -0x7198(gp) | t9 = sym.imp.g_string_new;
0x0004b4ec lw a0, 0x30(sp) | a0 = *(var_30h);
0x0004b4f0 sw v0, 0x58(sp) | *(var_58h) = v0;
0x0004b4f4 jalr t9 | t9 ();
0x0004b4f8 lw v1, (s0) | v1 = *(s0);
0x0004b4fc move s5, v0 | s5 = v0;
0x0004b500 sltiu v0, v1, 7 | v0 = (v1 < 7) ? 1 : 0;
0x0004b504 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0004b508 beqz v0, 0x4b794 | goto label_20;
| }
0x0004b50c addiu v0, zero, 1 | v0 = 1;
0x0004b510 sllv v0, v0, v1 | v0 <<= v1;
0x0004b514 andi a0, v0, 0x50 | a0 = v0 & 0x50;
0x0004b518 addiu v0, zero, 0x14 | v0 = 0x14;
| if (a0 == 0) {
0x0004b51c bnel a0, zero, 0x4b7d4 | goto label_21;
| }
0x0004b520 andi a0, v0, 0x28 | a0 = v0 & 0x28;
0x0004b524 andi v0, v0, 6 | v0 &= 6;
| if (a0 != 0) {
0x0004b528 bnez a0, 0x4b83c | goto label_22;
| }
| if (v0 == 0) {
0x0004b52c beql v0, zero, 0x4b798 | goto label_23;
| }
0x0004b530 lw a0, 4(s0) | a0 = *((s0 + 1));
0x0004b534 addiu v0, zero, 0x40 | v0 = 0x40;
0x0004b538 sw v0, 0x5c(sp) | *(var_5ch) = v0;
| label_7:
0x0004b53c addiu v0, v1, -5 | v0 = v1 + -5;
0x0004b540 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x0004b544 addiu v0, zero, 1 | v0 = 1;
| if (v0 != 0) {
0x0004b548 bnez v0, 0x4b6e0 | goto label_24;
| }
0x0004b54c lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v1 == v0) {
0x0004b550 beq v1, v0, 0x4b6e4 | goto label_25;
| }
0x0004b554 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x0004b558 andi v1, v0, 1 | v1 = v0 & 1;
0x0004b55c lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v1 == 0) {
0x0004b560 beqz v1, 0x4b708 | goto label_26;
| }
| label_3:
0x0004b564 andi v0, v0, 0x20 | v0 &= 0x20;
0x0004b568 lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v0 != 0) {
0x0004b56c bnez v0, 0x4b72c | goto label_27;
| }
| label_4:
0x0004b570 lw v0, 0x5c(sp) | v0 = *(var_5ch);
0x0004b574 addiu v1, zero, 0x14 | v1 = 0x14;
0x0004b578 lw a1, -0x7f88(gp) | a1 = *(gp);
| if (v0 == v1) {
0x0004b57c beq v0, v1, 0x4b750 | goto label_28;
| }
| label_5:
0x0004b580 lw a0, 0x18(s0) | a0 = *((s0 + 6));
| if (a0 != 0) {
0x0004b584 beql a0, zero, 0x4b5c0 |
0x0004b588 lw v0, (s5) | v0 = *(s5);
0x0004b58c lb v1, (a0) | v1 = *(a0);
| if (v1 == 0) {
0x0004b590 beql v1, zero, 0x4b5c0 | goto label_29;
| }
0x0004b594 lw v0, (s5) | v0 = *(s5);
0x0004b598 addiu v1, zero, 0x18 | v1 = 0x18;
0x0004b59c lw v0, 0x3c(sp) | v0 = *(var_3ch);
| if (v0 == v1) {
0x0004b5a0 beq v0, v1, 0x4b864 | goto label_30;
| }
0x0004b5a4 lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
0x0004b5a8 move a2, a0 | a2 = a0;
0x0004b5ac addiu a1, v0, -0x235c | a1 = v0 + -0x235c;
0x0004b5b0 move a0, s5 | a0 = s5;
0x0004b5b4 jalr t9 | t9 ();
0x0004b5b8 lw gp, 0x20(sp) | gp = *(var_20h);
| label_6:
0x0004b5bc lw v0, (s5) | v0 = *(s5);
| }
| label_29:
0x0004b5c0 lw t9, -0x7284(gp) | t9 = sym.imp.g_string_free;
0x0004b5c4 move a1, zero | a1 = 0;
0x0004b5c8 move a0, s6 | a0 = s6;
0x0004b5cc sw v0, 0x54(sp) | *(var_54h) = v0;
0x0004b5d0 jalr t9 | t9 ();
0x0004b5d4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b5d8 move a1, zero | a1 = 0;
0x0004b5dc lw t9, -0x7284(gp) | t9 = sym.imp.g_string_free;
0x0004b5e0 move a0, s5 | a0 = s5;
0x0004b5e4 jalr t9 | t9 ();
0x0004b5e8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b5ec lw a0, 0x28(s3) | a0 = *((s3 + 10));
0x0004b5f0 addiu a2, zero, 1 | a2 = 1;
0x0004b5f4 lw t9, -0x771c(gp) | t9 = sym.imp.g_array_append_vals;
0x0004b5f8 addiu a1, sp, 0x4c | a1 = sp + 0x4c;
0x0004b5fc jalr t9 | t9 ();
0x0004b600 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b604 lw v0, 4(s4) | v0 = *((s4 + 1));
| }
| label_1:
0x0004b608 addiu s1, s1, 1 | s1++;
0x0004b60c slt v0, s1, v0 | v0 = (s1 < v0) ? 1 : 0;
0x0004b610 addiu s2, s2, 0x1c | s2 += 0x1c;
| if (v0 == 0) {
0x0004b614 beqz v0, 0x4b6a0 | goto label_16;
| }
0x0004b618 lw s0, (s4) | s0 = *(s4);
0x0004b61c lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b620 addu s0, s0, s2 | s0 += s2;
| /* str.CamDeviceStatus */
0x0004b624 addiu a1, s7, -0x1c34 | a1 = s7 + -0x1c34;
0x0004b628 lw a0, 4(s0) | a0 = *((s0 + 1));
0x0004b62c jalr t9 | t9 ();
0x0004b630 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b634 beqz v0, 0x4b400 |
| }
0x0004b638 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b63c lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b640 lw a0, 4(s0) | a0 = *((s0 + 1));
| /* str.PTDeviceStatus */
0x0004b644 addiu a1, a1, -0x1c24 | a1 += -0x1c24;
0x0004b648 jalr t9 | t9 ();
0x0004b64c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0004b650 beqz v0, 0x4b400 | goto label_0;
| }
0x0004b654 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b658 lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b65c lw a0, 4(s0) | a0 = *((s0 + 1));
| /* str.CamLastTestDate */
0x0004b660 addiu a1, a1, -0x1c14 | a1 += -0x1c14;
0x0004b664 jalr t9 | t9 ();
0x0004b668 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x0004b66c bnez v0, 0x4b8c4 | goto label_31;
| }
| label_11:
0x0004b670 lw v0, 0x3c(s3) | v0 = *((s3 + 15));
0x0004b674 lw v0, 4(s4) | v0 = *((s4 + 1));
| if (v0 == 0) {
0x0004b678 bnel v0, zero, 0x4b608 | goto label_1;
| }
0x0004b67c lw a0, -0x7f88(gp) | a0 = *(gp);
0x0004b680 lw t9, -0x70b0(gp) | t9 = sym.imp.g_strdup;
0x0004b684 addiu v0, zero, 1 | v0 = 1;
0x0004b688 sw v0, 0x3c(s3) | *((s3 + 15)) = v0;
| /* str.LastTestDate */
0x0004b68c addiu a0, a0, -0x1ba4 | a0 += -0x1ba4;
0x0004b690 jalr t9 | t9 ();
0x0004b694 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x0004b698 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b69c b 0x4b42c | goto label_2;
| label_16:
0x0004b6a0 addiu v0, zero, 1 | v0 = 1;
| label_14:
0x0004b6a4 lw a0, 0x74(sp) | a0 = *(var_74h);
0x0004b6a8 lw v1, (fp) | v1 = *(fp);
0x0004b6ac lw ra, 0x9c(sp) | ra = *(var_9ch);
| if (a0 != v1) {
0x0004b6b0 bne a0, v1, 0x4b9a0 | goto label_32;
| }
0x0004b6b4 lw fp, 0x98(sp) | fp = *(var_98h);
0x0004b6b8 lw s7, 0x94(sp) | s7 = *(var_94h);
0x0004b6bc lw s6, 0x90(sp) | s6 = *(var_90h);
0x0004b6c0 lw s5, 0x8c(sp) | s5 = *(var_8ch);
0x0004b6c4 lw s4, 0x88(sp) | s4 = *(var_88h);
0x0004b6c8 lw s3, 0x84(sp) | s3 = *(var_84h);
0x0004b6cc lw s2, 0x80(sp) | s2 = *(var_80h);
0x0004b6d0 lw s1, 0x7c(sp) | s1 = *(var_7ch);
0x0004b6d4 lw s0, 0x78(sp) | s0 = *(var_78h);
0x0004b6d8 addiu sp, sp, 0xa0 |
0x0004b6dc jr ra | return v0;
| label_24:
0x0004b6e0 lw a1, -0x7f88(gp) | a1 = *(gp);
| label_25:
0x0004b6e4 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| /* str.readonly: */
0x0004b6e8 addiu a1, a1, -0x1a18 | a1 += -0x1a18;
0x0004b6ec move a0, s5 | a0 = s5;
0x0004b6f0 jalr t9 | t9 ();
0x0004b6f4 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x0004b6f8 andi v1, v0, 1 | v1 = v0 & 1;
0x0004b6fc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v1 != 0) {
0x0004b700 bnez v1, 0x4b564 | goto label_3;
| }
0x0004b704 lw a1, -0x7f88(gp) | a1 = *(gp);
| label_26:
0x0004b708 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| /* str.internal: */
0x0004b70c addiu a1, a1, -0x2464 | a1 += -0x2464;
0x0004b710 move a0, s5 | a0 = s5;
0x0004b714 jalr t9 | t9 ();
0x0004b718 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x0004b71c andi v0, v0, 0x20 | v0 &= 0x20;
0x0004b720 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0004b724 beqz v0, 0x4b570 | goto label_4;
| }
0x0004b728 lw a1, -0x7f88(gp) | a1 = *(gp);
| label_27:
0x0004b72c lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| /* str.hidden: */
0x0004b730 addiu a1, a1, -0x1a0c | a1 += -0x1a0c;
0x0004b734 move a0, s5 | a0 = s5;
0x0004b738 jalr t9 | t9 ();
0x0004b73c lw v0, 0x5c(sp) | v0 = *(var_5ch);
0x0004b740 addiu v1, zero, 0x14 | v1 = 0x14;
0x0004b744 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != v1) {
0x0004b748 bne v0, v1, 0x4b580 | goto label_5;
| }
0x0004b74c lw a1, -0x7f88(gp) | a1 = *(gp);
| label_28:
0x0004b750 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| /* str.checkbox: */
0x0004b754 addiu a1, a1, -0x1a04 | a1 += -0x1a04;
0x0004b758 move a0, s5 | a0 = s5;
0x0004b75c jalr t9 | t9 ();
0x0004b760 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x0004b764 andi v1, v0, 8 | v1 = v0 & 8;
0x0004b768 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v1 != 0) {
0x0004b76c bnez v1, 0x4b92c | goto label_33;
| }
0x0004b770 andi v0, v0, 0x10 | v0 &= 0x10;
0x0004b774 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| if (v0 == 0) {
0x0004b778 beqz v0, 0x4b8ac | goto label_34;
| }
0x0004b77c lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b780 move a0, s5 | a0 = s5;
| /* str.on_off */
0x0004b784 addiu a1, a1, -0x19f0 | a1 += -0x19f0;
0x0004b788 jalr t9 | t9 ();
0x0004b78c lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b790 b 0x4b5bc | goto label_6;
| label_20:
0x0004b794 lw a0, 4(s0) | a0 = *((s0 + 1));
| label_23:
0x0004b798 lw v0, 0x18(s3) | v0 = *((s3 + 6));
0x0004b79c lw a3, -0x7f88(gp) | a3 = *(gp);
0x0004b7a0 lw a2, -0x7f88(gp) | a2 = *(gp);
0x0004b7a4 lw t9, -0x7434(gp) | t9 = sym.imp.__syslog_chk;
0x0004b7a8 sw v1, 0x10(sp) | *(var_10h) = v1;
0x0004b7ac sw a0, 0x18(sp) | *(var_18h) = a0;
0x0004b7b0 sw v0, 0x14(sp) | *(var_14h) = v0;
| /* str.ptz_driver_param_legacy_config_register_driver_params */
0x0004b7b4 addiu a3, a3, -0x1920 | a3 += -0x1920;
| /* str._s:_unsupported_type__d_of_parameter___s__s */
0x0004b7b8 addiu a2, a2, -0x1a44 | a2 += -0x1a44;
0x0004b7bc addiu a1, zero, 1 | a1 = 1;
0x0004b7c0 addiu a0, zero, 3 | a0 = 3;
0x0004b7c4 jalr t9 | t9 ();
0x0004b7c8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b7cc lw v1, (s0) | v1 = *(s0);
0x0004b7d0 b 0x4b53c | goto label_7;
| label_21:
0x0004b7d4 sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x0004b7d8 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0004b7dc sw v0, 0x60(sp) | *(var_60h) = v0;
0x0004b7e0 lw v0, 0x38(sp) | v0 = *(var_38h);
0x0004b7e4 sw v0, 0x64(sp) | *(var_64h) = v0;
0x0004b7e8 b 0x4b53c | goto label_7;
| label_19:
0x0004b7ec lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
| /* str._viewer:_d */
0x0004b7f0 addiu a1, a1, -0x1a58 | a1 += -0x1a58;
0x0004b7f4 move a0, s6 | a0 = s6;
0x0004b7f8 jalr t9 | t9 ();
0x0004b7fc lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b800 b 0x4b4e4 | goto label_8;
| label_18:
0x0004b804 lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
| /* str._operator:_d */
0x0004b808 addiu a1, a1, -0x1a68 | a1 += -0x1a68;
0x0004b80c move a0, s6 | a0 = s6;
0x0004b810 jalr t9 | t9 ();
0x0004b814 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b818 lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0004b81c b 0x4b4c4 | goto label_9;
| label_17:
0x0004b820 lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
| /* str._admin:_d */
0x0004b824 addiu a1, a1, -0x1a74 | a1 += -0x1a74;
0x0004b828 move a0, s6 | a0 = s6;
0x0004b82c jalr t9 | t9 ();
0x0004b830 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b834 lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0004b838 b 0x4b4a4 | goto label_10;
| label_22:
0x0004b83c lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b840 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
0x0004b844 addiu v0, zero, 0x18 | v0 = 0x18;
| /* str.int: */
0x0004b848 addiu a1, a1, -0x1a4c | a1 += -0x1a4c;
0x0004b84c move a0, s5 | a0 = s5;
0x0004b850 sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x0004b854 jalr t9 | t9 ();
0x0004b858 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b85c lw v1, (s0) | v1 = *(s0);
0x0004b860 b 0x4b53c | goto label_7;
| label_30:
0x0004b864 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b868 lw t9, -0x70a4(gp) | t9 = sym.imp.__isoc99_sscanf;
0x0004b86c addiu a3, sp, 0x48 | a3 = sp + 0x48;
0x0004b870 addiu a2, sp, 0x44 | a2 = sp + 0x44;
| /* str._d.._d */
0x0004b874 addiu a1, a1, -0x6464 | a1 += -aav.0x00006464;
0x0004b878 jalr t9 | t9 ();
0x0004b87c addiu v1, zero, 2 | v1 = 2;
0x0004b880 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != v1) {
0x0004b884 bne v0, v1, 0x4b5bc | goto label_6;
| }
0x0004b888 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b88c lw t9, -0x772c(gp) | t9 = sym.imp.g_string_append_printf
0x0004b890 lw a3, 0x48(sp) | a3 = *(var_48h);
0x0004b894 lw a2, 0x44(sp) | a2 = *(var_44h);
| /* esilref: 'min=&d,max=&d' */
0x0004b898 addiu a1, a1, -0x918 | a1 += -0x918;
0x0004b89c move a0, s5 | a0 = s5;
0x0004b8a0 jalr t9 | t9 ();
0x0004b8a4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b8a8 b 0x4b5bc | goto label_6;
| label_34:
0x0004b8ac lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b8b0 move a0, s5 | a0 = s5;
| /* str.true_false */
0x0004b8b4 addiu a1, a1, -0x19e8 | a1 += -0x19e8;
0x0004b8b8 jalr t9 | t9 ();
0x0004b8bc lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b8c0 b 0x4b5bc | goto label_6;
| label_31:
0x0004b8c4 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b8c8 lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b8cc lw a0, 4(s0) | a0 = *((s0 + 1));
| /* str.PTLastTestDate */
0x0004b8d0 addiu a1, a1, -0x1c04 | a1 += -0x1c04;
0x0004b8d4 jalr t9 | t9 ();
0x0004b8d8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0004b8dc beqz v0, 0x4b670 | goto label_11;
| }
0x0004b8e0 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b8e4 lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b8e8 lw a0, 4(s0) | a0 = *((s0 + 1));
| /* str.CamImageFreeze */
0x0004b8ec addiu a1, a1, -0x1bf4 | a1 += -0x1bf4;
0x0004b8f0 jalr t9 | t9 ();
0x0004b8f4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x0004b8f8 bnez v0, 0x4b948 | goto label_35;
| }
| label_12:
0x0004b8fc lw v0, 0x40(s3) | v0 = *((s3 + 16));
0x0004b900 lw v0, 4(s4) | v0 = *((s4 + 1));
| if (v0 == 0) {
0x0004b904 bnel v0, zero, 0x4b608 | goto label_1;
| }
0x0004b908 lw a0, -0x7f88(gp) | a0 = *(gp);
0x0004b90c lw t9, -0x70b0(gp) | t9 = sym.imp.g_strdup;
0x0004b910 addiu v0, zero, 1 | v0 = 1;
0x0004b914 sw v0, 0x40(s3) | *((s3 + 16)) = v0;
| /* str.ImageFreeze */
0x0004b918 addiu a0, a0, -0x1b5c | a0 += -aav.0x00001b5c;
0x0004b91c jalr t9 | t9 ();
0x0004b920 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x0004b924 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b928 b 0x4b42c | goto label_2;
| label_33:
0x0004b92c lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b930 lw t9, -0x7720(gp) | t9 = sym.imp.g_string_append;
| /* str.yes_no */
0x0004b934 addiu a1, a1, -0x19f8 | a1 += -aav.0x000019f8;
0x0004b938 move a0, s5 | a0 = s5;
0x0004b93c jalr t9 | t9 ();
0x0004b940 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b944 b 0x4b5bc | goto label_6;
| label_35:
0x0004b948 lw a1, -0x7f88(gp) | a1 = *(gp);
0x0004b94c lw t9, -0x709c(gp) | t9 = sym.imp.g_strcmp0;
0x0004b950 lw a0, 4(s0) | a0 = *((s0 + 1));
| /* str.PTImageFreeze */
0x0004b954 addiu a1, a1, -0x1be4 | a1 += -0x1be4;
0x0004b958 jalr t9 | t9 ();
0x0004b95c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0004b960 beqz v0, 0x4b8fc | goto label_12;
| }
0x0004b964 lw t9, -0x70b0(gp) | t9 = sym.imp.g_strdup;
0x0004b968 lw a0, 4(s0) | a0 = *((s0 + 1));
0x0004b96c jalr t9 | t9 ();
0x0004b970 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x0004b974 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b978 b 0x4b42c | goto label_2;
| label_15:
0x0004b97c lw t9, -0x7100(gp) | t9 = sym.imp.g_array_new;
0x0004b980 addiu a2, zero, 0x28 | a2 = 0x28;
0x0004b984 addiu a1, zero, 1 | a1 = 1;
0x0004b988 move a0, zero | a0 = 0;
0x0004b98c jalr t9 | t9 ();
0x0004b990 lw gp, 0x20(sp) | gp = *(var_20h);
0x0004b994 lw v1, 4(s4) | v1 = *((s4 + 1));
0x0004b998 sw v0, 0x28(s3) | *((s3 + 10)) = v0;
0x0004b99c b 0x4b3b8 | goto label_13;
| label_32:
0x0004b9a0 lw t9, -0x74ec(gp) | t9 = sym.imp.__stack_chk_fail;
0x0004b9a4 jalr t9 | t9 ();
0x0004b9a8 nop |
| }
[*] Function printf used 7 times ptzaurus