Как разобраться в написанном? - Assembler

Узнай цену своей работы

Формулировка задачи:

Подскажите пожалуйста , открыл файл в IDA , вижу там следующее
1C01 ; ---------------------------------------------------------------------------
seg000:00011C01                 test    byte ptr [eax], 0
seg000:00011C04                 div     eax
seg000:00011C06                 icebp
seg000:00011C07                 sal     esi, cl
seg000:00011C09                 hlt
seg000:00011C0A ; ---------------------------------------------------------------------------
seg000:00011C0A                 icebp
seg000:00011C0B                 out     40h, al         ; Timer 8253-5 (AT: 8254.2).
seg000:00011C0D                 inc     eax
seg000:00011C0E                 inc     eax
seg000:00011C0F                 inc     eax
seg000:00011C10                 inc     eax
seg000:00011C11                 inc     eax
seg000:00011C12                 add     [eax+eax], bl
seg000:00011C15                 or      eax, 0FACD2h
seg000:00011C1A                 sub     al, 0
seg000:00011C1C                 or      eax, 0EDCD2h
seg000:00011C21                 cdq
seg000:00011C22                 pushf
seg000:00011C23                 add     ds:74CD3h, cl
seg000:00011C29                 out     40h, eax        ; Timer 8253-5 (AT: 8254.2).
seg000:00011C2B                 inc     eax
seg000:00011C2C                 inc     eax
seg000:00011C2D                 inc     eax
seg000:00011C2E                 inc     eax
seg000:00011C2F                 inc     eax
seg000:00011C30                 cdq
seg000:00011C31                 pushf
seg000:00011C32                 add     ds:7C0D3h, cl
seg000:00011C38                 icebp
seg000:00011C39                 inc     eax
seg000:00011C3A                 inc     eax
seg000:00011C3B                 inc     eax
seg000:00011C3C                 inc     eax
seg000:00011C3D                 inc     eax
seg000:00011C3E                 inc     eax
seg000:00011C3F                 cdq
seg000:00011C40                 pushf
seg000:00011C41                 add     ds:730D4h, cl
seg000:00011C47                 hlt
seg000:00011C47 ; ---------------------------------------------------------------------------
seg000:00011C48                 db  40h ; @
seg000:00011C49                 db 3 dup(40h)
seg000:00011C4C                 dd 9C994040h, 9CD40D00h, 40F50007h, 40404040h, 9C9940h
seg000:00011C4C                 dd 710D50Dh, 4040F600h, 40404040h, 0D009C99h, 784D5h, 404040F9h
seg000:00011C4C                 dd 99404040h, 0D50D009Ch, 0F20006E8h, 4040404Ch, 99404040h
seg000:00011C4C                 dd 0D60D009Ch, 4D00074Ch, 40404040h, 9C994040h, 0B8D60D00h
seg000:00011C4C                 dd 40600007h, 40404040h, 9C9940h, 724D70Dh, 40406100h
seg000:00011C4C                 dd 40404040h, 0D009C99h, 79CD7h, 404040C1h, 99404040h
seg000:00011C4C                 dd 0D80D009Ch, 0C2000708h, 40404040h, 1C004040h, 84D80D00h
seg000:00011C4C                 dd 2C000Fh, 0FCCD80Dh, 0D003C00h, 0E40D9h, 0D009C99h, 7B4D9h
seg000:00011C4C                 dd 404040C5h, 99404040h, 0DA0D009Ch, 0C6000738h, 40404040h
seg000:00011C4C                 dd 9C994040h, 0B0DA0D00h, 40C70007h, 40404040h, 9C9940h
seg000:00011C4C                 dd 71CDB0Dh, 4040C800h, 40404040h, 0D009C99h, 788DBh, 404040C9h
seg000:00011C4C                 dd 99404040h, 0DB0D009Ch, 0D30007FCh, 40404040h, 9C994040h
seg000:00011C4C                 dd 68DC0D00h, 40D40007h, 40404040h, 9C9940h, 7E4DC0Dh
seg000:00011C4C                 dd 4040D800h, 40404040h, 0D009C99h, 75CDDh, 404040D9h
seg000:00011C4C                 dd 99404040h, 0DD0D009Ch, 0E40007D8h, 40404040h, 1C004040h
seg000:00011C4C                 dd 58DE0D00h, 2C000Fh, 0F98DE0Dh, 0D003C00h, 0F24DFh, 0DF0D004Ch
seg000:00011C4C                 dd 99000EB0h, 0E00D009Ch, 0F000073Ch, 40404040h, 9C994040h
seg000:00011C4C                 dd 0C8E00D00h, 40F10007h, 40404040h, 9C9940h, 748E10Dh
seg000:00011C4C                 dd 4040F200h, 40404040h, 0D009C99h, 7D0E1h, 404040F3h
seg000:00011C4C                 dd 99404040h, 0E20D009Ch, 0F4000750h, 40404040h, 9C994040h
seg000:00011C4C                 dd 0C4E20D00h, 40F50007h, 40404040h, 9C9940h, 748E30Dh
seg000:00011C4C                 dd 4040F600h, 40404040h, 0D009C99h, 6CCE3h, 40404CF3h
seg000:00011C4C                 dd 40404040h, 0D009C99h, 748E4h, 4040404Dh, 99404040h
seg000:00011C4C                 dd 0E40D009Ch, 4E0007ACh, 40404040h, 9C994040h, 10E50D00h
seg000:00011C4C                 dd 405B0007h, 40404040h, 9C9940h, 774E50Dh, 40405C00h
seg000:00011C4C                 dd 40404040h, 0D009C99h, 7E4E5h, 4040405Dh, 99404040h
seg000:00011C4C                 dd 0E60D009Ch, 60000760h, 40404040h, 9C994040h, 0DCE60D00h
seg000:00011C4C                 dd 40610007h, 40404040h, 9C9940h, 758E70Dh, 40407A00h
seg000:00011C4C                 dd 40404040h, 0D009C99h, 7DCE7h, 4040407Eh, 99404040h
seg000:00011C4C                 dd 0E80D009Ch, 0C1000748h, 40404040h, 9C994040h, 0C8E80D00h
seg000:00011C4C                 dd 40C20007h, 40404040h, 9C9940h, 748E90Dh, 4040C300h
seg000:00011C4C                 dd 40404040h, 0D009C99h, 7B0E9h, 404040C4h, 99404040h
seg000:00011C4C                 dd 0EA0D009Ch, 0C500071Ch, 40404040h, 9C994040h, 90EA0D00h
seg000:00011C4C                 dd 40C60007h, 40404040h, 1C0040h, 0F04EB0Dh, 0D002C00h
seg000:00011C4C                 dd 0E2CEBh, 0D009C99h, 7ACEBh, 404040C7h, 404040h, 0EC0D001Ch
seg000:00011C4C                 dd 2C000F30h, 58EC0D00h, 9C99000Eh, 0DCEC0D00h, 40C80007h
seg000:00011C4C                 dd 40404040h, 1C0040h, 0F60ED0Dh, 0D002C00h, 0E88EDh, 0D009C99h
seg000:00011C4C                 dd 708EEh, 404040C9h, 99404040h, 0EE0D009Ch, 0D100078Ch
seg000:00011C4C                 dd 40404040h, 9C994040h, 0EF0D00h, 40D20007h, 40404040h
seg000:00011C4C                 dd 9C9940h, 764EF0Dh, 4040D300h, 40404040h, 0D009C99h
seg000:00011C4C                 dd 7C8EFh, 404040D4h, 404040h, 0F00D001Ch, 2C000F38h, 60F00D00h
seg000:00011C4C                 dd 9C99000Eh, 0D4F00D00h, 40D50007h, 40404040h, 1C0040h
seg000:00011C4C                 dd 0F4CF10Dh, 0D002C00h, 0E74F1h, 0D009C99h, 7E8F1h, 404040D7h
seg000:00011C4C                 dd 404040h, 0F20D001Ch, 2C000F60h, 88F20D00h, 9C99000Eh
seg000:00011C4C                 dd 0F30D00h, 40D80007h, 40404040h, 1C0040h, 0F7CF30Dh
seg000:00011C4C                 dd 0D002C00h, 0A4F3h, 2 dup(0)
seg000:00012000                 db    3
seg000:00012001 ; ---------------------------------------------------------------------------
seg000:00012001                 test    byte ptr [eax], 0
seg000:00012004                 div     eax
seg000:00012006                 icebp
seg000:00012007                 sal     esi, cl
seg000:00012009                 hlt
seg000:00012009 ; ---------------------------------------------------------------------------
seg000:0001200A                 dw 0D8F3h
seg000:0001200C ; ---------------------------------------------------------------------------
seg000:0001200C                 inc     eax
seg000:0001200D                 inc     eax
seg000:0001200E                 inc     eax
seg000:0001200F                 inc     eax
seg000:00012010                 inc     eax
seg000:00012011                 inc     eax
seg000:00012012                 cdq
seg000:00012013                 pushf
seg000:00012014                 add     ds:724F4h, cl
seg000:0001201A                 hlt
seg000:0001201B ; ---------------------------------------------------------------------------
seg000:0001201B                 inc     eax
seg000:0001201C                 inc     eax
seg000:0001201D                 inc     eax
seg000:0001201E                 inc     eax
seg000:0001201F                 inc     eax
seg000:00012020                 inc     eax
seg000:00012021                 cdq
seg000:00012022                 pushf
seg000:00012023                 add     ds:7A4F4h, cl
seg000:00012029                 cmc
seg000:0001202A                 inc     eax
seg000:0001202B                 inc     eax
seg000:0001202C                 inc     eax
seg000:0001202D                 inc     eax
seg000:0001202E                 inc     eax
seg000:0001202F                 inc     eax
seg000:00012030                 cdq
seg000:00012031                 pushf
seg000:00012032                 add     ds:714F5h, cl
seg000:00012038                 test    dword ptr [eax+40h], 40404040h
seg000:0001203F                 add     [eax+eax], bl
seg000:00012042                 or      eax, 0E84F5h
seg000:00012047                 cdq
seg000:00012048                 pushf
seg000:00012049                 add     ds:6B4F5h, cl
seg000:0001204F                 hlt
seg000:0001204F ; ---------------------------------------------------------------------------
seg000:00012050                 db  5Ch ; \
seg000:00012051                 db  40h ; @
seg000:00012052                 db  40h ; @
seg000:00012053                 db  40h ; @
seg000:00012054                 db  40h ; @
seg000:00012055                 db  40h ; @
seg000:00012056                 db  40h ; @
seg000:00012057                 db  99h ; Щ
seg000:00012058                 db  9Ch ; Ь
seg000:00012059                 align 2
seg000:0001205A                 db  0Dh
seg000:0001205B                 db 0F6h ; Ў
seg000:0001205C                 db  18h
seg000:0001205D                 db    7
seg000:0001205E                 dw 5D00h
seg000:00012060                 db  40h ; @
seg000:00012061                 db  40h ; @
seg000:00012062                 db  40h ; @
seg000:00012063                 db  40h ; @
seg000:00012064                 db  40h ; @
seg000:00012065                 db  40h ; @
seg000:00012066                 db  99h ; Щ
seg000:00012067                 db  9Ch ; Ь
seg000:00012068                 dd 84F60D00h, 40600007h, 40404040h, 9C9940h, 7F0F60Dh
seg000:00012068                 dd 40406B00h, 40404040h, 0D009C99h, 758F7h, 4040406Ch
seg000:00012068                 dd 99404040h, 0F70D009Ch, 6E0007D4h, 40404040h, 9C994040h
seg000:00012068                 dd 54F80D00h, 406F0007h, 40404040h, 9C9940h, 7D4F80Dh
seg000:00012068                 dd 40407A00h, 40404040h, 0D009C99h, 754F9h, 404040C3h
seg000:00012068                 dd 99404040h, 0F90D009Ch, 0C40007D0h, 40404040h, 9C994040h
seg000:00012068                 dd 48FA0D00h, 40C60007h, 40404040h, 9C9940h, 7C0FA0Dh
seg000:00012068                 dd 4040C900h, 40404040h, 0D009C99h, 740FBh, 404040D1h
seg000:00012068                 dd 99404040h, 0FB0D009Ch, 0D20007ACh, 40404040h, 9C994040h
seg000:00012068                 dd 18FC0D00h, 40E20007h, 40404040h, 1C0040h, 0F8CFC0Dh
seg000:00012068                 dd 0D002C00h, 0EC4FCh, 0D009C99h, 738FDh, 404040E3h, 99404040h
seg000:00012068                 dd 0FD0D009Ch, 0E50007ACh, 40404040h, 9C994040h, 18FE0D00h
seg000:00012068                 dd 40E60007h, 40404040h, 9C9940h, 79CFE0Dh, 4040F500h
seg000:00012068                 dd 40404040h, 0D009C99h, 728FFh, 404040F9h, 99404040h
seg000:00012068                 dd 0FF0D009Ch, 0F50006A0h, 4040405Ch, 99404040h, 0E009Ch
seg000:00012068                 dd 5D000700h, 40404040h, 9C994040h, 70000E00h, 40C90007h
seg000:00012068                 dd 40404040h, 9C9940h, 7E0000Eh, 4040D100h, 40404040h
seg000:00012068                 dd 0E009C99h, 76001h, 404040E4h, 99404040h, 10E009Ch, 0E50007E0h
seg000:00012068                 dd 40404040h, 9C994040h, 50020E00h, 40E60007h, 40404040h
seg000:00012068                 dd 9C9940h, 7BC020Eh, 4040E700h, 40404040h, 0E009C99h
seg000:00012068                 dd 72803h, 404040E8h, 99404040h, 30E009Ch, 0E9000794h
seg000:00012068                 dd 40404040h, 9C994040h, 40E00h, 40F00007h, 40404040h
seg000:00012068                 dd 9C9940h, 784040Eh, 4040F100h, 40404040h, 0E009C99h
seg000:00012068                 dd 7F404h, 404040F2h, 99404040h, 50E009Ch, 0F3000764h
seg000:00012068                 dd 40404040h, 9C994040h, 0EC050E00h, 40F40007h, 40404040h
seg000:00012068                 dd 9C9940h, 75C060Eh, 4040F500h, 40404040h, 0E009C99h
seg000:00012068                 dd 7C406h, 404040F6h, 99404040h, 70E009Ch, 0F800072Ch
seg000:00012068                 dd 40404040h, 9C994040h, 0A0070E00h, 40F90007h, 40404040h
seg000:00012068                 dd 9C9940h, 604080Eh, 404CF600h, 40404040h, 9C9940h, 768080Eh
seg000:00012068                 dd 40404D00h, 40404040h, 0E009C99h, 7DC08h, 4040404Eh
seg000:00012068                 dd 99404040h, 90E009Ch, 5B000768h, 40404040h, 9C994040h
seg000:00012068                 dd 0E8090E00h, 405C0007h, 40404040h, 9C9940h, 7740A0Eh
seg000:00012068                 dd 40405D00h, 40404040h, 0E009C99h, 7F40Ah, 40404060h
seg000:00012068                 dd 99404040h, 0B0E009Ch, 61000778h, 40404040h, 9C994040h
seg000:00012068                 dd 0F40B0E00h, 406B0007h, 40404040h, 1C0040h, 0F780C0Eh
seg000:00012068                 dd 0E002C00h, 0EB00Ch, 0E009C99h, 72C0Dh, 4040406Ch, 99404040h
seg000:00012068                 dd 0D0E009Ch, 6E0007A8h, 40404040h, 9C994040h, 2C0E0E00h
seg000:00012068                 dd 40C10007h, 40404040h, 1C0040h, 0FB00E0Eh, 0E002C00h
seg000:00012068                 dd 0F040Fh, 0F0E003Ch, 4C000F7Ch, 0F80F0E00h, 9C99000Eh
seg000:00012068                 dd 74100E00h, 40C20007h, 40404040h, 1C0040h, 0FF0100Eh
seg000:00012068                 dd 0E002C00h, 0F4411h, 110E003Ch, 4C000FBCh, 38120E00h
seg000:00012068                 dd 9C99000Eh, 0B4120E00h, 40C30007h, 40404040h, 1C0040h
seg000:00012068                 dd 0F30130Eh, 0E002C00h, 0FB813h, 140E003Ch, 4C000F34h
seg000:00012068                 dd 0B0140E00h, 5C000Fh, 0E28150Eh, 9C9900h, 7A4150Eh, 4040C400h
seg000:00012068                 dd 40404040h, 0E001C00h, 2016h, 2 dup(0)
seg000:00012400                 db    3
seg000:00012401                 db 0F1h ; ё
seg000:00012402                 align 4
seg000:00012404                 div     eax
seg000:00012406                 icebp
seg000:00012407                 sal     esi, cl
seg000:00012409                 hlt
это часть текста из файла , что это примерно ? Похоже это на ассемблер , или это что то другое ? Как разобраться в написанном ? Куда рыть и что читать , примерно хотя бы ...

Решение задачи: «Как разобраться в написанном?»

textual
Листинг программы
seg000:0000000A a00000000000000 db '00000000000000000000000000',0
seg000:00000025                 db '>',0
seg000:00000027                 db    2
seg000:00000028                 dd 3000000h, 0
seg000:00000030                 dd 40001h, 0
seg000:00000038                 db    4
seg000:00000039                 dd offset word_E6
seg000:0000003D                 db  13h
seg000:0000003E                 align 10h
seg000:00000040                 dd 0
seg000:00000044                 dd 2A1D0000h, 0
seg000:0000004C                 db    2
seg000:0000004D                 db    2
seg000:0000004E                 dw 2
seg000:00000050                 dd 6 dup(0)
seg000:00000068                 dd 2B1D0000h, 2 dup(9B330058h), 2 dup(0)
seg000:0000007C                 dd 5C0100h, 0
seg000:00000084                 dd 2C1A1100h, 4040202h, 2000100h, 0
seg000:00000094                 dd 40000h, 0
seg000:0000009C                 dd 80000000h, 3 dup(0)
seg000:000000AC                 dd 0FE030000h, 0Dh dup(0)
seg000:000000E4                 db 2 dup(0)
seg000:000000E6 word_E6         dw 0                    ; DATA XREF: seg000:00000039o
seg000:000000E8 dword_E8        dd 0C6h dup(0)
seg000:00000400                 dd offset unk_1200
seg000:00000404                 dd 0C000000h, 80000h, 100006h, 1, 0FAh dup(0)
seg000:000007FC                 dd offset unk_7EFF
seg000:00000800                 db  80h ; А
seg000:00000801                 db 2Eh, 2 dup(0)
seg000:00000804                 db 0F7h ; ў
seg000:00000805                 db 0F0h, 0F1h, 0D3h
seg000:00000808                 dd 0F8F8F0F2h, 4040F2F1h, 1C004040h, 100100h, 0FFFF0000h
seg000:00000808                 dd 3 dup(0FFFFFFFFh), 100FFFFh, 14h, 0F3h dup(0)
seg000:00000BFC                 dd offset dword_8200
seg000:00000C00                 db  82h ; В
seg000:00000C01                 db  16h
seg000:00000C02                 align 4
seg000:00000C04                 db  40h ; @
seg000:00000C05                 db 3 dup(40h)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5