void fn0C00_0100(byte ah, byte bh) { bios_video_set_mode(0x13); word16 ax_11 = DPB(ax, 0x00, 0, 8); __outw(0x03C8, ax_11); uint8 al_10 = 0x00; do { Eq_16 al_14 = al_10 >>u 0x02; __outb(0x03C9, al_14); __outb(0x03C9, al_14 << 0x01); __outb(0x03C9, al_14 << 0x01 >>u 0x01); byte al_19 = (byte) ax_11; al_10 = al_19 + 0x01; ax_11 = DPB(ax_11, al_19 + 0x01, 0, 8); } while (al_19 != 0x01); do { byte bl_38 = bh; Eq_43 Eq_42::*cx_39 = &Eq_42::tFFFFFA00; do { (0xA000->*cx_39).bFFFFFFFF = bl_38; bl_38 = bl_38 + 0x01; cx_39 = cx_39 - 0x0001; } while (cx_39 != &Eq_42::t0000); byte al_51; bios_kbd_check_keystroke(out al_51); bh = bh + 0x01; } while (bh == 0x00); msdos_terminate(0x00); }
void fn0C00_0100(word16 cx, Eq_13 Eq_14::*bx, byte Eq_21::*di, Eq_14 * ds) { bios_video_set_mode(0x13); __outw(0x03D4, DPB(ax, 0x20, 8, 8)); ptr32 es_ax_12 = Mem0[ds:bx + 0x0000:segptr32]; Eq_19 al_13 = (byte) es_ax_12; Eq_21 * es_15 = SLICE(es_ax_12, selector, 16); do { __outb(0x03C9, al_13); al_13 = al_13 + 0x95 + C; C = cond(al_13); if (al_13 != 0x00) continue; do { es_15->*di = (byte) cx_57 ^ SLICE(cx_57, byte, 8); C = false; di = di + 1; cx = cx_57 - 0x0001; word16 cx_57 = cx; } while (cx != 0x0000); word16 ax_50 = DPB(cx_57, __inb(0x60), 0, 8); al_13 = (byte) (ax_50 - 0x0001); } while (ax_50 != 0x0001); return; }
void fn0C00_0100(byte Eq_11::*si, byte bl, byte dh, Eq_11 * ds) { bios_video_set_mode(0x12); byte ::*bx_5 = DPB(bx, 0xA0, 8, 8); l0C00_0108: byte ::*di_22 = bx_5; dx = DPB(dx, 0xC0, 0, 8); while (true) { word16 cx_34 = 0x0146; do { bx_5->*di_22 = ds->*si; si = si + 1; di_22 = di_22 + 1; cx_34 = cx_34 - 0x0001; } while (cx_34 != 0x0000); if (__inb(0x60) == 0x01) { bios_video_set_mode(0x03); return; } dx = dx - 0x0001; if (dx == 0x0000) goto l0C00_0108; } }
void fn0C00_0100(uint16 bx, uint16 bp, byte ah) { bios_video_set_mode(0x13); int16 ax_23 = DPB(ax, 0x13, 0, 8); do { int16 ax_24 = ax_23 *s 0x0003; if (ax_24 >= 0xC000) { if (ax_24 <= 0x4000) { if (ax_24 <= 0x0000) bx = bx - 0x00C8; bp = bp + 0x0140; } bx = bx + 0x00C8; } bp = bp >>u 0x0001; bx = bx >>u 0x0001; SEQ(0xA000, bp)[bx * 0x0140] = 0x0A; ax_23 = ax_24; } while (DPB(ax_24, __inb(0x60), 0, 8) != 0x0001); bios_video_set_mode(0x03); return; }
word64 fn00000001400012BC(word32 edx, word64 rdi, word64 r13, selector gs, word64 qwArg08, word64 qwArg10) { if (fn0000000140001600(0x01, edx, r13) == 0x00) { word64 rcx_362; byte bl_363; fn0000000140001974(0x07, qwLoc04, qwArg00, qwArg04, qwArg0C, out rcx_362, out bl_363); int3(); } Mem23[fp - 0x14 + 0x00:byte] = 0x00; word32 eax_25 = fn00000001400015C4(gs); word64 rax_28 = DPB(rax, eax_25, 0); byte bl_29 = (byte) eax_25; word32 ecx_33 = Mem23[0x00000001400035B0 + 0x00:word32]; if (ecx_33 == 0x01) { ecx_33 = 0x07; word64 rcx_355; rax_28 = DPB(rax, fn0000000140001974(0x07, qwLoc04, qwArg00, qwArg04, qwArg0C, out rcx_355, out bl_29), 0); } word64 rax_233; if (ecx_33 == 0x00) { Mem331[0x00000001400035B0 + 0x00:word32] = 0x01; word64 rax_334 = DPB(rax_28, _initterm_e(0x00000001400021B8, 0x00000001400021D0), 0); if (_initterm_e(0x00000001400021B8, 0x00000001400021D0) != 0x00) { rax_233 = DPB(rax_28, 0xFF, 0); return rax_233; } _initterm(0x00000001400021A0, 0x00000001400021B0); Mem344[0x00000001400035B0 + 0x00:word32] = 0x02; }
void fn0C00_0100() { bios_video_set_mode(0x13); word16 cx_10 = 0x0FFF; byte Eq_12::*si_11 = &Eq_12::b0FFF; do { 0xA000->*si_11 = 0x28; si_11 = si_11 + 343 ^ 0x0934; cx_10 = cx_10 - 0x0001; } while (cx_10 != 0x0000); byte al_21 = 0xA000->b0000; Eq_27 Eq_12::*si_18 = &Eq_12::b0000; word16 ax_23 = DPB(ax, al_21, 0, 8); while (true) { byte ah_27 = (0xA000->*si_18).b0140; (0xA000->*si_18).b0140 = al_21; word16 ax_31 = DPB(ax_23, ah_27, 0, 8); Eq_41 Eq_12::*si_32 = si_18 + ax_31; ax_23 = DPB(ax_31, (0xA000->*si_32).bFFFFFEC0, 8, 8); (0xA000->*si_32).bFFFFFEC0 = ah_27; al_21 = ah_27; si_18 = si_32 + 0x0002; } }
void fn0040112B(word32 ecx, word32 edx, word32 ebx, word32 ebp, word32 edi, selector fs) { byte al_15 = (byte) ebx; byte v12_20 = Mem0[ebx + 0x00000000:byte] + al_15; Mem21[ebx + 0x00000000:byte] = v12_20; byte v14_22 = Mem21[ebx + 0x00000000:byte] + al_15; Mem23[ebx + 0x00000000:byte] = v14_22; byte v15_24 = Mem23[ebx + 0x00000000:byte] + al_15; Mem25[ebx + 0x00000000:byte] = v15_24; byte v16_26 = Mem25[ebx + 0x00000000:byte] + al_15; Mem27[ebx + 0x00000000:byte] = v16_26; byte v17_28 = Mem27[ebx + 0x00000000:byte] + al_15; Mem29[ebx + 0x00000000:byte] = v17_28; byte v18_30 = Mem29[ebx + 0x00000000:byte] + al_15; Mem31[ebx + 0x00000000:byte] = v18_30; byte v19_32 = Mem31[ebx + 0x00000000:byte] + al_15; Mem33[ebx + 0x00000000:byte] = v19_32; byte v20_34 = Mem33[ebx + 0x00000000:byte] + al_15; Mem35[ebx + 0x00000000:byte] = v20_34; byte v21_36 = Mem35[ebx + 0x00000000:byte] + al_15; Mem37[ebx + 0x00000000:byte] = v21_36; byte v22_38 = Mem37[ebx + 0x00000000:byte] + al_15; Mem39[ebx + 0x00000000:byte] = v22_38; byte v23_40 = Mem39[ebx + 0x00000000:byte] + al_15; Mem41[ebx + 0x00000000:byte] = v23_40; byte v24_42 = Mem41[ebx + 0x00000000:byte] + al_15; Mem43[ebx + 0x00000000:byte] = v24_42; byte v25_44 = Mem43[ebx + 0x00000000:byte] + al_15; Mem45[ebx + 0x00000000:byte] = v25_44; byte v26_46 = Mem45[ebx + 0x00000000:byte] + al_15; Mem47[ebx + 0x00000000:byte] = v26_46; byte v27_48 = Mem47[ebx + 0x00000000:byte] + al_15; Mem49[ebx + 0x00000000:byte] = v27_48; byte v28_50 = Mem49[ebx + 0x00000000:byte] + al_15; Mem51[ebx + 0x00000000:byte] = v28_50; byte v29_52 = Mem51[ebx + 0x00000000:byte] + al_15; Mem53[ebx + 0x00000000:byte] = v29_52; word32 edi_10 = ~edi; word32 edi_55 = DPB(edi_10, (word16) edi_10 + 0xFF84, 0, 16); Mem53[0x00401093:word32](); word32 edi_96 = edi_55 + (ebp - 0xFFFFFFF9); word32 eax_89 = __rol(ebx, 0x05); word32 esp_112 = fp; word16 di_110 = (word16) edi_96; word32 ecx_99 = DPB(0x00009090, Mem53[ebp - 0xFFFFFFF9:word16] ^ 0x9090, 0, 16); byte dh_102 = SLICE((edx & 0x6AD47C2E) + 0x00000001 - 0x00000001, byte, 8); if (ecx_99 != 0x00000000) { ExitThread(edi_96); Mem283[ebx - 0x00000035:byte] = Mem53[ebx - 0x00000035:byte] + (byte) (eax_89 + edi_96 | 0x0014008D); word32 ecx_278 = DPB(ecx_99, 0x00, 8, 8); Mem288[ecx_278 + 0x00000000:byte] = Mem283[ecx_278 + 0x00000000:byte] + dh_102; word32 eax_290 = DPB(ecx_99, Mem288[0x00DDB800:byte], 0, 8); Mem292[eax_290 + 0x66017000 + eax_290:byte] = Mem288[eax_290 + 0x66017000 + eax_290:byte] + SLICE(ecx_99, byte, 8); di_110 = (word16) (edi_96 - 0x00000001); esp_112 = fp - 0x00000004; }
void fn0C00_0100(byte Eq_13::*bx, byte ah) { bios_video_set_mode(0x03); byte al_11 = 0x03; word16 ax_12 = DPB(ax, 0x03, 0, 8); while (true) { 0xB800->*bx = 0xB800->*bx + 0x01; al_11 = al_11 - 0x01; bx = bx - ax_12; ax_12 = DPB(ax_12, al_11, 0, 8); } }
void fn0C00_0100(Eq_36 * ds) { bios_video_set_mode(0x13); __outb(0x03C8, 0x00); byte al_11 = 0x00; do { __outb(0x03C9, al_11); al_11 = al_11 + 0x01; } while (al_11 != 0x00); byte ah_19 = SLICE(cs, byte, 8); Eq_23 * ax_21 = DPB(cs, ah_19 + 0x10, 8, 8); Eq_23 * ax_24 = DPB(cs, ah_19 + 0x20, 8, 8); Eq_31 Eq_23::*bx_30 = Eq_23::a0000; do { rLoc2 = sin(rLoc2) * (real64) ds->ptr01C6; (ax_24->*bx_30).w0000 = (int16) rLoc2; (ax_21->*bx_30).w0000 = 0x0000; word16 bx_48 = &bx_30->w0000; bx_30 = bx_48 + 0x0001; } while (bx_48 != 0x0001); Eq_56 Eq_36::*di_55 = &Eq_36::t010A; do { word16 si_66 = (ds->*di_55).w0000; byte Eq_23::*bx_67 = Eq_23::a0000; int8 bl_68 = 0x00; int8 bh_69 = 0x00; do { if (bh_69 *s bh_69 + bl_68 *s bl_68 <=u 0x09C3) bx_67[si_66] = 0xC9; bx_67 = bx_67 + 1; bl_68 = (byte) bx_67; bh_69 = SLICE(bx_67, byte, 8); } while (bx_67 != Eq_23::a0000); word16 di_91 = di_55 - 0x0001; di_55 = di_91 - 0x0001; } while (di_91 != 0xFF01); do { byte Z_95 = fn0C00_0171(0xA000, ds, ax_21, ax_24); byte al_96; bios_kbd_check_keystroke(out al_96); } while (Z_95); bios_video_set_mode(0x03); return; }
void fn0C00_0100(byte cl, byte ah, byte ch) { __cli(); do { do { byte al_26 = __inb(0x03DA); ax = DPB(ax, al_26 & 0x08, 0, 8); } while ((al_26 & 0x08) == 0x00); cl = cl + 0x01; word16 bx_34 = 0x018F; uint8 bl_35 = 0x8F; do { do { byte al_47 = __inb(0x03DA); ax = DPB(ax, al_47 & 0x01, 0, 8); } while ((al_47 & 0x01) != 0x00); do { byte al_54 = __inb(0x03DA); ax = DPB(ax_84, al_54 & 0x01, 0, 8); word16 ax_84 = ax; } while ((al_54 & 0x01) == 0x00); __outb(0x03C8, 0x00); __outb(0x03C9, cl); Eq_50 al_65 = bl_35 >>u 0x01; __outb(0x03C9, al_65); ch = ch + al_65; __outb(0x03C9, ch); bx_34 = bx_34 - 0x0001; ax = DPB(ax_84, ch, 0, 8); bl_35 = (byte) bx_34; } while (bx_34 != 0x0000); word16 ax_75 = DPB(ax_84, __inb(0x60), 0, 8); ax = ax_75 - 0x0001; byte al_77 = (byte) (ax_75 - 0x0001); } while (ax_75 != 0x0001); __outb(0x03C8, al_77); __outb(0x03C9, al_77); __outb(0x03C9, al_77); __outb(0x03C9, al_77); return; }
void fn0C00_0100(byte cl, byte ah, Eq_15 * es, Eq_49 * ds) { bios_video_set_mode(0x13); byte al_2 = 0x13; word16 ax_31 = DPB(ax, 0x13, 0, 8); while (true) { Eq_13 di_40 = 0x0400; word16 cx_44 = DPB(cx, 0xFA, 8, 8); while (cx_44 != 0x0000) { Mem49[es:di_40 + 0x0000:byte] = al_2; di_40 = di_40 + 0x0001; cx_44 = cx_44 - 0x0001; } Eq_13 di_101 = 0x0400; do { Eq_35 rLoc2_62 = rLoc2 / 32; Eq_39 rLoc2_64 = cos(rLoc2_62); fn0C00_015E(fp - 0x0006, 0xFE00, di_131.u0, (byte) (fn0C00_0171(fp - 0x0006, 0xFE00, di_131, (byte) (ax_31 + 0x0001), es, ds, sin(rLoc2_62)) + 0x0001), es, ds); word16 ax_91 = fn0C00_0171(fp - 0x0006, 0xFE00, di_131, 0x04, es, ds, rLoc2_64); al_2 = __inb(0x60); rLoc2.u1 = 1; ax_31 = DPB(ax_91, al_2, 0, 8); if (al_2 == 0x01) msdos_terminate_program20(); di_101.u0 = di_131.u0; Eq_13 di_131 = di_101; } while (di_131 <u 0x0340); Mem107[ss:fp - 0x000A:word16] = 0xA000; cx = DPB(cx_44, 0xFA, 8, 8); byte Eq_49::*si_113 = Eq_49::a0400; byte Eq_106::*di_114 = Eq_106::a0000; while (cx != 0x0000) { 0xA000->*di_114 = ds->*si_113; si_113 = si_113 + 1; di_114 = di_114 + 1; cx = cx - 0x0001; } } }
void fn0C00_0100(word16 cx, int16 bx, word16 bp, int16 si, byte ah) { bios_video_set_mode(0x13); word16 ax_20 = DPB(ax, 0x13, 0, 8); while (true) { word16 ax_24 = ax_20 + 0x0001; si = si *s 0x0003 + cx; byte al_25 = (byte) ax_24; if (si <= 0xC000) { bp = bp + 0x0001; bx = bx + 0x0001; } else if (si <= 0x0000) { cx = cx + 0x0001; bp = bp + 0x0001; l0C00_012B: bx = bx - 0x0001; } else if (si <= 0x4000) { bp = bp - 0x0001; bx = bx + 0x0001; } else { bp = bp - 0x0001; goto l0C00_012B; } Eq_20 Eq_25::*di_36 = bx *s 0x0140 + bp; (0xA000->*di_36).b0000 = al_25; (0xA000->*di_36).b0001 = al_25; (0xA000->*di_36).b0002 = 0x04; (0xA000->*di_36).b0003 = 0x04; (0xA000->*di_36).b0004 = 0x04; (0xA000->*di_36).b0005 = 0x00; (0xA000->*di_36).b0006 = 0x00; (0xA000->*di_36).b0007 = 0x00; ax_20 = DPB(ax_24, 0x00, 0, 8); } }
void fn0C00_0100(byte ch, byte bh) { bios_video_set_mode(0x13); byte bl_118 = 0x03; word16 bx_119 = DPB(bx, 0x03, 0, 8); do { cx = DPB(cx, 0xC8, 0, 8); byte Eq_25::*di_35 = &Eq_25::b0000; do { uint32 dx_ax_47 = cx *u cx; uint16 ax_110 = (word16) dx_ax_47; uint16 dx_112 = SLICE(dx_ax_47, word16, 16); word16 si_53 = 0x0280; do { uint16 dx_61 = SEQ(dx_112, ax_110 + 0x0281 - si_53) % bx_119; 0xA000->*di_35 = (byte) dx_61 & 0x0F; word16 si_77 = si_53 - 0x0001; di_35 = di_35 + 1; ax_110 = dx_61; dx_112 = 0x0000; si_53 = si_77 - 0x0001; } while (si_77 != 0x0001); cx = cx - 0x0001; } while (cx != 0x0000); do { word16 ax_90 = DPB(ax_110, __inb(0x60), 0, 8); if (ax_90 == 0x0001) goto l0C00_013F; uint16 ax_108 = DPB(ax_90 - 0x0001, 0x0000->b046C & 0x0F, 0, 8); ax_110 = dx_122; dx_112 = ax_108; uint16 dx_122 = dx_112; } while ((byte) dx_122 - (byte) ax_108 <=u 0x00); bl_118 = bl_118 + 0x01; bx_119 = DPB(bx_119, bl_118, 0, 8); } while (bl_118 != 0x00); return; }
void fn0C00_0100(Eq_20 bx, word16 di, byte ah) { bios_video_set_mode(0x12); uint16 ax_27 = DPB(ax, 0x12, 0, 8); word16 bp_28 = 0x0000; word16 cx_10 = 0x01E0; do { word16 wLoc02_34 = cx_10; word16 cx_35 = 0x027F; bp_28 = bp_28 - 0x027F + 0x0001; do { word16 cx_113 = 0x0000; byte cl_112 = 0x00; word16 dx_108 = SLICE(bx *u ax_27, word16, 16); do { Eq_20 ax_71 = (word16) ((dx_108 + bx) *s (bx - dx_108)) + bp_28; bx = ax_71; if (ax_71 > 0x0000) break; cl_112 = ~cl_112; dx_108 = dx_108 + di; cx_113 = DPB(cx_113, cl_112, 0, 8); } while (dx_108 != 0x0000); __syscall(0x10); wLoc02_34 = wLoc02_114; bx.u0 = 0x0000; ax_27 = DPB(cx_113, 0x0C, 8, 8); bp_28 = bp_28 + 0x0000; cx_35 = cx_35 - 0x0001; word16 wLoc02_114 = wLoc02_34; } while (cx_35 != 0x0000); di = di + 0x0001; cx_10 = wLoc02_114 - 0x0001; } while (cx_10 != 0x0000); __syscall(0x16); return; }
void fn0C00_0100(word32 eax, word16 cx, int16 bx, word16 bp) { bios_video_set_mode(0x13); ui32 eax_18 = DPB(eax, 0x13, 0, 8); while (true) { ui32 eax_20 = eax_18 * 0x00000003; int16 ax_22 = (word16) eax_20 + cx; if (ax_22 <= 0xC000) { bp = bp + 0x0001; bx = bx + 0x0001; } else if (ax_22 <= 0x0000) { cx = cx + 0x0001; bp = bp + 0x0001; l0C00_012B: bx = bx - 0x0001; } else if (ax_22 <= 0x4000) { bp = bp - 0x0001; bx = bx + 0x0001; } else { bp = bp - 0x0001; goto l0C00_012B; } byte al_32 = (byte) (ax_22 + 0x0001); Eq_24 Eq_28::*di_35 = bx *s 0x0140 + bp; (0xA000->*di_35).b0000 = al_32; (0xA000->*di_35).b0001 = al_32; eax_18 = DPB(eax_20, ax_22 + 0x0001, 0, 16); } }
void fn0C00_0100(byte cl, byte ah) { bios_video_set_mode(0x13); do { cx = DPB(cx, 0xFA, 8, 8); do { ah = ah + ((byte) cx + SLICE(cx, byte, 8)); (0xA000->*cx).bFFFFFFFF = ah; cx = cx - 0x0001; } while (cx != &Eq_13::t0000); } while (__inb(0x60) != 0x01); msdos_terminate_program20(); }
void fn0C00_0100(byte Eq_10::*si, byte Eq_23::*di, Eq_10 * ds) { bios_video_set_mode(0x13); word16 ax_15 = 0xA000; while (true) { byte al_14 = ds->*si; ax_15 = DPB(ax_15, al_14, 0, 8); si = si + 1; if (al_14 == 0x00) continue; 0xA000->*di = (byte) (ax_15 - 0x0001); ax_15 = ax_15 - 0x0001; di = di + 1; } }
word16 fn0C00_015E(Eq_44 Eq_49::*bx, cups16 bp, word16 di, byte al, Eq_15 * es, Eq_49 * ds) { byte Eq_15::*di_12 = di + (ds->*bx).w0000; do { es->*di_12 = al; Eq_129 Eq_15::*di_15 = di_12 + 1; (es->*di_15).b0000 = al; byte al_18 = al ^ 0x08; (es->*di_15).b0001 = al_18; (es->*di_15).b0002 = al_18; al = al_18 ^ 0x08; ax = DPB(ax, al_18 ^ 0x08, 0, 8); di_12 = di_15 + 0x013F; } while (&di_15->b0002 <u bp); return ax; }
byte fn0C00_0171(Eq_92 * es, Eq_36 * ds, Eq_23 * fs, Eq_23 * gs) { Eq_38 Eq_23::*bx_4 = ds->ptr01C6; ds->w01CE = (gs->*bx_4).w0000; word16 si_24 = (gs->*bx_4).w4000; word16 dx_107 = 0x0000; word16 bp_106 = 0x0000; byte Eq_92::*di_105 = &Eq_92::b0000; word16 cx_110 = 0x00C8; do { word16 cx_50 = 0x0140; di_54 = di_105; bp_55 = bp_106; dx_56 = dx_107; do { byte Eq_92::*di_54; word16 bp_55; word16 dx_56; dx_56 = dx_56 + ds->w01CE; bp_55 = bp_55 + si_24; Eq_140 bx_119 = DPB(bp_55, SLICE(dx_56, byte, 8), 0, 8); byte al_121 = 0x14; do { if (Mem7[fs:bx_119 + Mem7[ds:0x01CC:word16]:byte] != 0x00) break; bx_119 = bx_119 * 0x0002; al_121 = al_121 - 0x04; } while (al_121 != 0x00); es->*di_54 = al_121; di_54 = di_54 + 1; cx_50 = cx_50 - 0x0001; } while (cx_50 != 0x0000); di_105 = di_105 + 0x0140; bp_106 = bp_106 - ds->w01CE; dx_107 = dx_107 + si_24; cx_110 = cx_110 - 0x0001; } while (cx_110 != 0x0000); ds->b01C7 = ds->b01C7 + 0x01; byte v23_113 = ds->b01CD + 0x04; ds->b01CD = v23_113; return cond(v23_113); }
void fn0C00_0100(word16 si, byte bl) { bios_video_set_mode(0x13); byte Eq_18::*di_16 = &Eq_18::b0000; word16 wLoc02_19 = 0x0000; int16 si_21 = si + 0x0001; while (true) { __outb(0x03C8, (byte) bx); do { __outb(0x03C9, 0x00); __outb(0x03C9, 0x00); bx = bx + 0x0001; byte al_53 = (byte) bx; __outb(0x03C9, al_53); word16 cx_54 = 0x0780; while (cx_54 != 0x0000) { 0xA000->*di_16 = al_53; di_16 = di_16 + 1; cx_54 = cx_54 - 0x0001; } } while (di_16 != &Eq_18::bFFFFE880); bx = wLoc02_19 + si_21; di_16 = &Eq_18::b0000; byte bl_66 = (byte) bx; wLoc02_19 = bx; if (bl_66 != 0x20) { bx = DPB(bx, bl_66, 0, 8); if (bl_66 != 0x00) continue; } l0C00_013C: si_21 = -si_21; } }
void fn0C00_0100() { bios_video_set_mode(0x13); word16 ax_12 = 0x0013; Eq_9 Eq_17::*di_13 = &Eq_17::t0000; do { word16 ax_14 = ax_12 + di_13; Eq_13 al_17 = (byte) ax_14 + SLICE(ax_14, byte, 8); (0xA000->*di_13).t0000 = al_17; Eq_9 Eq_17::*di_20 = di_13 + 1; ax_12 = DPB(ax_14, al_17, 0, 8); di_13 = di_20; } while (di_20 != &Eq_17::t0000); Mem26[ss:fp - 0x0002:word16] = 0xA000; Eq_13 Eq_17::*si_30 = Eq_17::a002D; while (true) { Mem34[0xA000:di_13 + 0x0000:word16] = Mem26[0xA000:si_30 + 0x0000:word16]; si_30 = si_30 + 1; di_13 = di_13 + 2; } }
// ais3_crackme.c // Generated by decompiling ais3_crackme // using Reko decompiler version 0.6.2.0. #include "ais3_crackme.h" void _init() { call_gmon_start(); return; } void _start(word64 rax, * rdx, word64 qwArg00, word32 dwArg04) { __align(fp + 0x08); word64 rax_21 = DPB(rax, __libc_start_main(&globals->t4005C5, qwArg00, fp + 0x08, &globals->t400620, &globals->t4006B0, rdx, DPB(qwArg00, fp + 0x04, 0)), 0); __hlt(); } void call_gmon_start() { word64 rax_4 = globals->qw600FE0; if (rax_4 != 0x00) { word64 rsp_17; byte SCZO_18; word64 rax_19; byte SZO_20; byte C_21; byte Z_22; word32 eax_23;
#include "ls.h" void _init() { word64 rax_4 = *&globals->qw619FF8; if (rax_4 != 0x00) { word64 rsp_15; byte SCZO_16; word64 rax_17; byte SZO_18; byte C_19; byte Z_20; __gmon_start__(); } return; } void fn0000000000404890(word64 rax, * rdx, word64 qwArg00, word32 dwArg04) { __align(fp + 0x08); word64 rax_21 = DPB(rax, __libc_start_main(&globals->t4028C0, qwArg00, fp + 0x08, &globals->t411E60, &globals->t411ED0, rdx, DPB(qwArg00, fp + 0x04, 0)), 0); __hlt(); } void _fini() { return; }
void fn00001000(int32 d0, byte * a0) { struct Eq_4 * a6_8 = *(struct Eq_4 **) 0x04; int32 d2_166 = d0; byte * a2_249 = a0; if (a6_8->w0014 < 0x24) { word32 * a0_505 = &globals->ptr2B88; word32 d0_508 = 0x0C; do { *a0_505 = 0x00; a0_505 = a0_505 + 0x01; d0_508 = d0_508 - 0x01; } while (d0_508 != 0x00); } *&globals->ptr2B88 = fp; *&globals->ptr2B8C = (struct Eq_4 **) a6_8; struct Eq_25 * d0_19 = FindTask(0x00); struct Eq_31 * d0_112 = OpenLibrary(0x12BC, 0x00); if (d0_112 != null) { int32 d4_460; *&globals->ptr2B90 = (struct Eq_31 **) d0_112; if (d0_19->ptr00AC == null) { d4_460 = 0x02; d2_166 = 0x08; } else { byte * a0_463 = a0; d4_460 = 0x03; do { if (*a0_517 == 0x20) d4_460 = DPB(d4_460, (word16) d4_460 + 0x01, 0); a0_463 = a0_517 + 0x01; byte * a0_517 = a0_463; } while (*a0_517 != 0x00); } int32 d0_105 = d4_460 << 0x02; int32 d0_107 = d0_105 + d2_166; int32 d3_110 = d0_107 + 0x11; int32 d1_111 = 0x00010001; d0_112 = AllocMem(d0_107 + 0x11, 0x00010001); if (d0_112 != null) { Eq_119 a6_162; struct Eq_67 * dwLoc14_159; word32 a0_164; d0_112->dw0000 = (word32) (d0_107 + 0x11); Eq_126 d4_123 = d4_460 - 0x01; d0_112[0x03] = (struct Eq_31) d4_123; d0_112[0x02] = (struct Eq_31) (d0_112 + 0x04 + d0_105 / 0x04); Mem131[0x00:word32] = 0x00; struct Eq_67 * d0_132 = d0_19->ptr00AC; d0_132->ptr0000 = d0_107 + 0x11; d0_132->dw000C = d4_123 - 0x01; d0_132->ptr0008 = (byte *) (&d0_132->ptr0010 + d0_105 / 0x0028); Mem150[0x00:word32] = 0x00; struct Eq_67 * d0_151 = d0_19->ptr00AC; if (d0_151 == null) { fn00001214(d0_19); *&globals->ptr2B94 = (struct Eq_67 **) d0_151; *&globals->ptr2B98 = (struct Eq_67 **) d0_151; Mem403[0x00:word32] = 0x00; dwLoc14_159 = d0_151; ui32 d0_406 = d0_151->dw0024; if (d0_406 != 0x00) Enable(); Supervisor(d0_132); d0_132->dw0004 = d0_406; d2_166 = 1005; if (d0_406 == 0x00) { fn0000127C(0x0014); return; } *&globals->dw2B9C = d0_406; *&globals->dw2BA0 = d0_406; *&globals->dw2BA4 = d0_406; d0_19->dw009C = d0_406; d0_19->dw00A0 = d0_406; word32 d0_432 = ((word32[]) 0x08)[d0_406]; if (d0_432 != 0x00) d0_19->dw00A4 = d0_432; a6_162 = *&globals->ptr2B8C; l000011F8: a0_164 = d0_19->dw003A; goto l00001202; }
word32 fn0055B841(word32 dwArg00) { word32 * eax_7 = DPB(dwArg00, (byte) dwArg00 + 0x01, 0, 8); return *eax_7; }
word32 fn0055B837(byte bl) { Eq_192 * eax_5 = DPB(fn0055B841(dwLoc04), __inb(0xC6), 0, 8); Mem12[eax_5 - 0x00000002:byte] = Mem0[eax_5 - 0x00000002:byte] + bl; return eax_5->dw0000; }
void fn0C00_0100(byte cl, Eq_20 * es, Eq_32 * ds) { bios_video_set_mode(0x13); word16 dx_100 = 0x003F; bcu8 dl_287 = 0x3F; do { word16 cx_51 = DPB(cx, 0xFA, 8, 8); byte Eq_20::*di_57 = Eq_20::a01F8; while (cx_51 != 0x0000) { es->*di_57 = 0x00; di_57 = di_57 + 1; cx_51 = cx_51 - 0x0001; } Eq_31 Eq_32::*si_137 = &Eq_32::t01BE; word16 cx_212 = DPB(cx_51, 0x06, 0, 8); if (dl_287 >u 0x06) { dx_100 = dx_100 - 0x0001; goto l0C00_011A; } l0C00_011A: do { word16 ax_90 = Mem0[ds:si_137 + 0x0000:word16]; word16 si_94 = si_137 + 0x0002; if (cx_212 == dx_100) { int8 al_325 = (byte) ax_90; if (ax_90 == 0x0000) dx_100 = dx_100 - 0x0001; else { (ds->*si_94).b0000 = (ds->*si_94).b0000 + 0x01; (ds->*si_94).b0001 = (ds->*si_94).b0001 - 0x01; byte bl_338 = 0x01; if (al_325 != 0x00) { if (al_325 < 0x00) bl_338 = 0xFF; (ds->*si_94).b0001 = (ds->*si_94).b0001 + bl_338; (ds->*si_94).b0002 = (ds->*si_94).b0002 - bl_338; } } } word16 ax_122 = (word16) (ds->*si_94).b0001; byte al_134 = (ds->*si_94).b0003; byte Eq_20::*di_125 = (word16) ((word16) (ds->*si_94).b0000 *u 0x0140) + ax_122 + 0x01F8; word16 bx_132 = DPB(ax_122, (ds->*si_94).b0002, 0, 8); word16 ax_135 = DPB(0x0140, al_134, 0, 8); si_137 = &si_94->b0003 + 0x0001; cx_148 = cx_212; do { word16 cx_148; word16 si_152 = si_137 + 0x0000; byte ah_153 = ds->*si_152; cx_148 = DPB(cx_148, Mem0[ds:si_137 + 0x0000:byte], 0, 8); ax_135 = DPB(ax_135, ah_153, 8, 8); si_137 = si_152 + 0x0001; do { word16 cx_167 = bx_132; while (cx_167 != 0x0000) { es->*di_125 = al_134; di_125 = di_125 + 1; cx_167 = cx_167 - 0x0001; } word16 di_179 = di_125 - bx_132; di_125 = di_179 + 0x0140; byte cl_183 = (byte) cx_148; if ((ah_153 & 0x10) != 0x00) { di_125 = di_179 + 0x0142; bx_132 = bx_132 - 0x0001 - 0x0001; } if ((ah_153 & 0x01) != 0x00) bx_132 = bx_132 + 0x0001 + 0x0001; if ((cl_183 & 0x01) != 0x00) { if ((ah_153 & 0x02) != 0x00) bx_132 = bx_132 - 0x0001; if ((ah_153 & 0x20) != 0x00) { di_125 = di_125 - 0x0001; bx_132 = bx_132 + 0x0001; } } cx_148 = cx_148 - 0x0001; } while (cx_148 != 0x0000); } while ((ah_153 & 0x80) != 0x00); cx_212 = cx_212 - 0x0001; } while (cx_212 != 0x0000); word16 Eq_32::*si_219 = Eq_32::a01F8; word16 Eq_212::*di_220 = Eq_212::a0000; word16 cx_223 = 0x7D00; while (cx_223 != 0x0000) { 0xA000->*di_220 = ds->*si_219; si_219 = si_219 + 1; di_220 = di_220 + 1; cx_223 = cx_223 - 0x0001; } Mem239[ss:fp - 0x0002:word16] = ds; Mem244[ss:fp - 0x0002:word16] = ax_135; es = 0xA000; word16 cx_259 = 0x0008; do { if ((__inb(0x03DA) & 0x08) != 0x00) continue; do ; while ((__inb(0x03DA) & 0x08) == 0x00); cx_259 = cx_259 - 0x0001; } while (cx_259 != 0x0000); dl_287 = (byte) dx_100; cx = cx_223; } while (__inb(0x60) != 0x01); return; }
void fn0C00_0100(byte ch, Eq_17 * ds) { bios_video_set_mode(0x13); int8 Eq_17::*si_11 = &Eq_17::b01FF; int8 Eq_17::*bx_10 = &Eq_17::b01FF; word16 cx_12 = DPB(cx, 0x10, 0, 8); do { si_11 = si_11 - 0x0001; ds->*bx_10 = ds->*si_11; bx_10 = bx_10 + 1; cx_12 = cx_12 - 0x0001; } while (cx_12 != 0x0000); word16 cx_247 = DPB(cx_12, 0x20, 0, 8); do { ds->*bx_10 = -(ds->*si_11); si_11 = si_11 + 1; bx_10 = bx_10 + 1; cx_247 = cx_247 - 0x0001; } while (cx_247 != 0x0000); do { byte ah_75 = 0x0040->b006C; word16 ax_213 = DPB(ax, ah_75, 8, 8); do ; while (ah_75 == 0x0040->b006C); word16 bx_79 = bx_10 + 1; byte bl_81 = (byte) (bx_79 & 0x003F); word16 cx_86 = DPB(cx_247, 0x80 - (ds->*(bx_79 & 0x003F)).b01EF, 0, 8); byte Eq_74::*di_102 = &Eq_74::bFFFFAA00; while (cx_86 != 0x0000) { 0xA000->*di_102 = 0x1D; di_102 = di_102 + 1; cx_86 = cx_86 - 0x0001; } word16 cx_101 = DPB(cx_86, 0x0F, 0, 8); while (cx_101 != 0x0000) { 0xA000->*di_102 = 0x16; di_102 = di_102 + 1; cx_101 = cx_101 - 0x0001; } byte al_113 = (bl_81 & 0x04) + 0x16; 0xA000->*di_102 = al_113; byte Eq_74::*di_116 = di_102 + 1; 0xA000->*di_116 = al_113; byte Eq_74::*di_118 = di_116 + 1; word16 cx_121 = DPB(cx_101, 0x0F, 0, 8); while (cx_121 != 0x0000) { 0xA000->*di_118 = 0x16; di_118 = di_118 + 1; cx_121 = cx_121 - 0x0001; } word16 cx_132 = 0xAB40 - di_118; while (cx_132 != 0x0000) { 0xA000->*di_118 = 0x1D; di_118 = di_118 + 1; cx_132 = cx_132 - 0x0001; } byte Eq_74::*di_152 = &Eq_74::bFFFFF8C0; word16 cx_154 = DPB(cx_132, 0x3F, 0, 8); do { word16 cx_167 = 0x0140; Eq_142 Eq_74::*si_170 = di_152 - 0x0140; di_173 = di_152; byte Eq_74::*di_173; while (cx_167 != 0x0000) { 0xA000->*di_173 = (0xA000->*si_170).b0000; si_170 = si_170 + 1; di_173 = di_173 + 1; cx_167 = cx_167 - 0x0001; } (0xA000->*si_170).b0000 = (0xA000->*si_170).b0000 | 0x00; if ((0xA000->*si_170).b0000 != 0x00) { do { si_170 = si_321 + 1; Eq_142 Eq_74::*si_321 = si_170; } while (0x16 != (0xA000->*si_321).b0000); (0xA000->*si_170).b0000 = 0x16; (0xA000->*si_170).b0000 = 0x16; Eq_194 Eq_74::*si_312 = &si_170->b0000; do { si_312 = si_322 - 0x0001; Eq_194 Eq_74::*si_322 = si_312; } while (0x16 != (0xA000->*si_322).b0000); (0xA000->*si_312).b0002 = 0x16; (0xA000->*si_312).b0003 = 0x16; } di_152 = di_152 - 0x0140; cx_154 = cx_154 - 0x0001; } while (cx_154 != 0x0000); byte Eq_74::*bx_209 = &Eq_74::b013F; do { bcu8 al_219 = __inb(0x40); byte ah_218 = 0x00; ax_213 = DPB(ax_213, al_219, 0, 8); if (al_219 >=u 0xF8) { ah_218 = al_219 & 0x0F | 0x10; ax_213 = DPB(ax_213, ah_218, 8, 8); } 0xA000->*bx_209 = ah_218; bx_209 = bx_209 - 0x0001; } while (bx_209 != Eq_74::a0000); bx_10 = bx_79 & 0x003F; ax = DPB(ax_213, 0x00, 8, 8); cx_247 = DPB(cx_154, 0x87, 0, 8); byte Eq_74::*di_248 = &Eq_74::bFFFFA8C0; do { ax = DPB(ax, __inb(0x40) & 0x03, 0, 8); word16 cx_255 = 0x0140; byte Eq_74::*si_263 = di_248 - 0x0140 - 0x0001 + ax; while (cx_255 != 0x0000) { 0xA000->*di_248 = 0xA000->*si_263; si_263 = si_263 + 1; di_248 = di_248 + 1; cx_255 = cx_255 - 0x0001; } di_248 = di_248 - 0x0280; cx_247 = cx_247 - 0x0001; } while (cx_247 != 0x0000); } while (__inb(0x60) != 0x01); byte al_290; bios_kbd_get_keystroke(out al_290); byte bl_294; byte ch_295; byte cl_296; bios_video_get_EGA_info(out bl_294, out ch_295, out cl_296); return; }
void fn0C00_0100(byte bh, Eq_10 * ds) { bios_video_set_mode(0x13); Eq_9 Eq_10::*si_18 = &Eq_10::t01BC; do { word16 ax_17 = Mem0[ds:si_18 + 0x0000:word16]; byte dh_22 = SLICE(ax_17, byte, 8); bios_video_set_cursor_position(bh, dh_22, (byte) ax_17); si_18 = si_18 + 0x0002 + 0x0001; dx = ax_17; word16 ax_25 = DPB(dx, 0x02, 8, 8); do { byte al_30 = Mem0[ds:si_18 + 0x0000:byte]; msdos_write_console_char(al_30); ax_25 = DPB(ax_25, al_30, 0, 8); si_18 = si_18; dx = DPB(dx, al_30, 0, 8); } while (al_30 != 0x00); } while (dh_22 != 0x00); do { __outb(0x03C9, al_30); word16 ax_50 = __rol(DPB(ax_25, ~al_30, 0, 8), 0x01); __outb(0x03C9, (byte) ax_50); word16 ax_53 = __ror(ax_50, 0x01); byte al_54 = (byte) ax_53; __outb(0x03C9, al_54); word16 ax_57 = DPB(ax_53, ~al_54, 0, 8); ax_25 = ax_57 + 0x0001; al_30 = (byte) (ax_57 + 0x0001); } while (ax_57 != 0x0001); Eq_79 Eq_104::*di_111 = Eq_104::a0000; byte bl_116 = 0xCC; word16 bx_114 = DPB(bx, 0xCC, 0, 8); do { word16 cx_112 = 0x0140; byte cl_113 = 0x40; do { Eq_93 al_107; if ((0xA000->*di_111).t0000 == 0x00) { word16 ax_160 = __aam(cl_113 | bl_116); al_107 = ((byte) ax_160 | SLICE(ax_160, byte, 8)) & 0x3F; } else { Eq_87 al_168 = cl_113 - bl_116; al_107 = al_168 - cl_113 - (al_168 <u 0x00); } (0xA000->*di_111).t0000 = al_107; cx_112 = cx_112 - 0x0001; di_111 = di_111 + 1; cl_113 = (byte) cx_112; } while (cx_112 != 0x0000); bx_114 = bx_114 - 0x0001; bl_116 = (byte) bx_114; } while (bx_114 != 0x0000); __outb(0x0331, 0x3F); Mem129[ss:fp - 0x0002:word16] = 0xFA00; byte Eq_104::*si_122 = Eq_104::a0000; byte Eq_104::*di_125 = Eq_104::aFFFFFA00; word16 cx_126 = 0x0140; do { 0xA000->*di_125 = 0xA000->*si_122; si_122 = si_122 + 1; di_125 = di_125 + 1; cx_126 = cx_126 - 0x0001; } while (cx_126 != 0x0000); Mem151[ss:fp - 0x0002:word16] = 0x0177; do ; while (((byte) __inw(0x03DA) & 0x08) == 0x00); return; }
// subject.c // Generated on TIMESTAMP by decompiling from_pouet.net/with_source_331/m68k_amiga/subject.exe // using Decompiler version VERSION #include "subject.h" void fn00001000(word32 d0, word32 d2, word32 d4, word32 d5) { word32 a6_3 = Mem0[0x00000004:word32]; word32 d0_5 = DPB(d0, 0xA8C0, 0, 16); (a6_3 + -198)(); if (false) return; else { word32 a5_87 = 0x00DFF006; Mem89[a5_87 + 148:word16] = 0x4000; word32 a4_92 = 0x00001180; word16 v15_95 = (word16) (d0_5 + 0x000006C4); Mem96[a4_92 + 6:word16] = v15_95; word32 d0_112 = __swap(d0_5 + 0x000006C4); word16 v19_98 = (word16) d0_112; Mem99[a4_92 + 2:word16] = v19_98; word32 a1_111 = d0_5; word32 d4_100 = DPB(d4, 0x018F, 0, 16); do { d5 = DPB(d5, 0x01AF, 0, 16); do { word16 v22_118 = (word16) d4_100;