Function at 0x404940
Capabilities:
Terminate process

Disassembly:
push ebp
mov eax, 1
mov ebp, esp
push edi
lea edx, [ebp - 0x218]
xor edi, edi
push esi
push ebx
sub esp, 0x27c
mov dword [ebp - 0x224], eax
mov eax, pe_overlay
mov byte [ebp - 0x219], 0
xor ebx, ebx
mov dword [ebp - 0x228], eax
mov eax, pe_overlay
mov dword [ebp - 0x230], eax
mov eax, 0x200
mov byte [ebp - 0x231], 0
mov byte [ebp - 0x232], 0
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp], edx
mov dword [esp + 4], eax
call sub.cygwin1.dll_memcpy
lea esi, [esi]
lea edi, [edi]
movzx eax, word [ebp + ebx*2 - 0x218]
mov edx, eax
shr edx, 8
add dl, al
lea eax, [ebx + 1]
movzx ebx, ax
add byte [ebp - 0x232], dl
cmp bx, 0xff
jbe 0x4049b0
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
mov eax, dword [ebp - 0x218]
test ax, ax
js 0x4058d3
xor esi, esi
mov dword [ebp - 0x22c], esi
mov dword [esp], str.ATA_device__with
call sub.cygwin1.dll_printf
cmp byte [ebp - 0x218], 0
jns 0x405931
mov dword [esp], str.removable_media
call sub.cygwin1.dll_puts
mov ecx, dword [ebp - 0x214]
movzx eax, cx
cmp ax, 0x37c8
sete dl
cmp ax, 0x738c
sete al
or eax, edx
test al, 1
jne 0x404cff
cmp cx, 0x8c73
je 0x404cff
cmp cx, 0xc837
je 0x404cff
cmp word [ebp - 0x1e2], 0
jne 0x404d67
cmp word [ebp - 0x204], 0
jne 0x404da1
cmp word [ebp - 0x1ea], 0
jne 0x404ddb
cmp word [ebp - 0xb8], 0
jne 0x404e15
cmp word [ebp - 0x90], 0
jne 0x404e4f
movzx ebx, word [ebp - 0x5c]
movzx esi, word [ebp - 0x5a]
test bx, bx
sete al
cmp bx, 0xffff
sete dl
or eax, edx
xor edx, edx
test al, 1
mov dword [ebp - 0x24c], edx
je 0x404ea2
mov dword [esp], str.Standards:
call sub.cygwin1.dll_printf
cmp word [ebp - 0x230], 5
je 0x404f2b
movzx ecx, word [ebp - 0x176]
lea eax, [ecx - 1]
cmp ax, 0x21
ja 0x405942
cmp word [ebp - 0x224], 2
jbe 0x405998
movzx edx, cx
movsx ax, byte [edx + 0x40b920]
movzx edi, ax
test edi, edi
je 0x405964
mov eax, dword [edx*4 + 0x4092c0]
test eax, eax
je 0x405964
mov dword [esp + 4], eax
mov dword [esp], str._n_tUsed:__s
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x178]
test ax, ax
setne dl
inc ax
setne al
movzx eax, al
test edx, eax
jne 0x406054
cmp word [ebp - 0x224], di
jae 0x404b5b
mov dword [ebp - 0x224], edi
cmp di, 7
je 0x404b78
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 7
setbe dl
test eax, edx
je 0x404b87
test byte [ebp - 0x7c], 1
mov eax, 8
jne 0x405dfb
cmp di, 5
je 0x404ba4
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 5
setbe dl
test eax, edx
je 0x404bd6
movzx edx, word [ebp - 0x172]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x405de4
movzx edx, word [ebp - 0x170]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x4065a6
cmp di, 4
je 0x404bf3
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 4
setbe dl
test eax, edx
je 0x404c3e
cmp byte [ebp - 0x1a], 0xa5
sete al
xor edx, edx
cmp byte [ebp - 0x232], 0
sete dl
test eax, edx
jne 0x406106
movzx eax, word [ebp - 0x15e]
and eax, 0xc000
cmp eax, 0x4000
je 0x406106
movzx edx, word [ebp - 0x172]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x4060f7
cmp di, 3
je 0x404c5f
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 3
setbe dl
test eax, edx
je 0x4063d6
movzx edx, word [ebp - 0x172]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x406968
movzx eax, word [ebp - 0x1b4]
and eax, 0xc000
cmp eax, 0x4000
je 0x404ca9
test byte [ebp - 0x1ae], 4
jne 0x406808
movzx eax, word [ebp - 0x11a]
and eax, 3
dec eax
jne 0x4063d6
mov ebx, 4
test edi, edi
mov dword [ebp - 0x224], ebx
jne 0x405e09
mov edx, dword [ebp - 0x224]
mov dword [esp], str._n_tLikely_used:__u_n
mov dword [esp + 4], edx
call sub.cygwin1.dll_printf
cmp word [ebp - 0x228], 0xffff
jne 0x404f82
cmp word [ebp - 0x224], 4
jbe 0x404f77
mov eax, dword [ebp - 0x224]
sub eax, 3
movzx eax, ax
jmp 0x404f7c
movzx eax, cx
mov ebx, 5
cmp ax, 0x37c8
mov dword [ebp - 0x224], ebx
sete dl
cmp ax, 0x738c
sete al
or eax, edx
test al, 1
jne 0x405981
movzx eax, cx
cmp ax, 0x37c8
sete dl
cmp ax, 0x8c73
sete al
or eax, edx
test al, 1
je 0x404a51
test byte [ebp - 0x218], 4
je 0x404a51
mov dword [esp], str._n_tWARNING:_ID_response_incomplete._n_tWARNING:_Following_data_may_be_incorrect._n
call sub.cygwin1.dll_puts
cmp word [ebp - 0x1e2], 0
je 0x404a5f
mov dword [esp], str._t__20s
mov edx, str.Model_Number:
mov dword [esp + 4], edx
call sub.cygwin1.dll_printf
mov eax, 0x14
mov dword [esp + 4], eax
lea eax, [ebp - 0x1e2]
mov dword [esp], eax
call fcn.004047b0
cmp word [ebp - 0x204], 0
je 0x404a6d
mov dword [esp], str._t__20s
mov eax, str.Serial_Number:
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov eax, 0xa
mov dword [esp + 4], eax
lea eax, [ebp - 0x204]
mov dword [esp], eax
call fcn.004047b0
cmp word [ebp - 0x1ea], 0
je 0x404a7b
mov dword [esp], str._t__20s
mov eax, str.Firmware_Revision:
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov eax, 4
mov dword [esp + 4], eax
lea eax, [ebp - 0x1ea]
mov dword [esp], eax
call fcn.004047b0
cmp word [ebp - 0xb8], 0
je 0x404a89
mov dword [esp], str._t__20s
mov eax, str.Media_Serial_Num:
mov esi, 0x14
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov dword [esp + 4], esi
lea eax, [ebp - 0xb8]
mov dword [esp], eax
call fcn.004047b0
cmp word [ebp - 0x90], 0
je 0x404a97
mov dword [esp], str._t__20s
mov ebx, str.Media_Manufacturer:
mov dword [esp + 4], ebx
call sub.cygwin1.dll_printf
lea eax, [ebp - 0x90]
mov ecx, 0xa
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004047b0
movzx ebx, word [ebp - 0x5c]
movzx esi, word [ebp - 0x5a]
test bx, bx
sete al
cmp bx, 0xffff
sete dl
or eax, edx
xor edx, edx
test al, 1
mov dword [ebp - 0x24c], edx
jne 0x404abe
mov dword [esp], str.Transport:
call sub.cygwin1.dll_printf
mov ecx, ebx
shr ecx, 0xc
mov dword [ebp - 0x250], ecx
je 0x406503
dec ecx
je 0x406827
mov dword [esp + 4], ebx
mov dword [esp], str.0x_04x
call sub.cygwin1.dll_printf
test si, si
setne al
xor edx, edx
cmp si, 0xffff
setne dl
test eax, edx
jne 0x406529
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 8]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.cygwin1.dll_putc
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x24c], eax
mov dword [esp], str.Standards:
call sub.cygwin1.dll_printf
cmp word [ebp - 0x230], 5
jne 0x404ad8
xor esi, esi
cmp word [ebp - 0x184], 9
je 0x406952
movzx eax, word [ebp - 0x186]
test ax, ax
setne dl
inc ax
setne al
movzx eax, al
test edx, eax
jne 0x406553
test esi, esi
je 0x4059c5
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
mov eax, 2
mov dword [ebp - 0x224], eax
mov eax, 1
mov dword [ebp - 0x228], eax
mov dword [esp], str.Configuration:
call sub.cygwin1.dll_puts
cmp word [ebp - 0x230], 5
setne al
xor edx, edx
cmp word [ebp - 0x224], 1
sete dl
test eax, edx
je 0x405010
movzx edx, word [ebp - 0x218]
mov ebx, 1
shr edx, 1
mov dword [ebp - 0x220], edx
jmp 0x404fd2
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 0xe
ja 0x405010
test byte [ebp - 0x220], 1
je 0x404fc0
mov dword [esp], str._t_s_n
mov eax, dword [ebx*4 + 0x409360]
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 0xe
jbe 0x404fd2
lea esi, [esi]
lea edi, [edi]
cmp word [ebp - 0x22c], 1
je 0x406167
xor eax, eax
xor esi, esi
xor edi, edi
mov dword [ebp - 0x238], eax
xor eax, eax
mov dword [ebp - 0x23c], eax
xor eax, eax
mov dword [ebp - 0x248], eax
xor eax, eax
test byte [ebp - 0x1b5], 2
mov dword [ebp - 0x244], eax
je 0x40507a
movzx ecx, word [ebp - 0x19e]
movzx eax, word [ebp - 0x1a0]
shl ecx, 0x10
or ecx, eax
mov dword [ebp - 0x238], ecx
cmp ecx, 0xfbfc10
jbe 0x40507a
cmp word [ebp - 0x216], 0
je 0x40671c
movzx eax, word [ebp - 0x1ae]
and eax, 1
mov dword [ebp - 0x220], eax
mov dword [esp], str._tLogical_t_tmax_tcurrent
call sub.cygwin1.dll_puts
mov ebx, dword [ebp - 0x220]
xor eax, eax
test ebx, ebx
je 0x4050a9
movzx eax, word [ebp - 0x1ac]
mov dword [esp + 8], eax
movzx eax, word [ebp - 0x216]
mov dword [esp], str._tcylinders_t_u_t_u_n
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov ecx, dword [ebp - 0x220]
xor eax, eax
test ecx, ecx
je 0x4050d7
movzx eax, word [ebp - 0x1aa]
mov dword [esp + 8], eax
movzx eax, word [ebp - 0x212]
mov dword [esp], str._theads_t_t_u_t_u_n
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov edx, dword [ebp - 0x220]
xor eax, eax
test edx, edx
je 0x405105
movzx eax, word [ebp - 0x1a8]
mov dword [esp + 8], eax
movzx eax, word [ebp - 0x20c]
mov dword [esp], str._tsectors_track_t_u_t_u_n
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov edi, dword [ebp - 0x220]
test edi, edi
je 0x405c4e
movzx edx, word [ebp - 0x1aa]
xor esi, esi
xor ebx, ebx
movzx ecx, word [ebp - 0x1ac]
mov dword [ebp - 0x26c], esi
mov edi, dword [ebp - 0x26c]
mov dword [ebp - 0x270], edx
mov eax, dword [ebp - 0x270]
imul edi, ecx
mul ecx
mov esi, edx
add esi, edi
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x270]
movzx edx, word [ebp - 0x1a8]
imul eax, ebx
xor ebx, ebx
mov dword [ebp - 0x270], edx
mov dword [ebp - 0x26c], ebx
add esi, eax
mov eax, dword [ebp - 0x258]
mul dword [ebp - 0x270]
mov dword [ebp - 0x254], esi
mov ecx, dword [ebp - 0x26c]
mov ebx, dword [ebp - 0x258]
mov esi, eax
imul ebx, ecx
mov eax, dword [ebp - 0x270]
mov ecx, edx
mov edx, dword [ebp - 0x254]
add ecx, ebx
mov dword [esp], 0x40cb10
imul eax, edx
lea edi, [ecx + eax]
call sub.cygwin1.dll_puts
cmp word [ebp - 0x228], 1
je 0x405cfa
mov ebx, dword [ebp - 0x220]
test ebx, ebx
je 0x40524a
movzx edx, word [ebp - 0x1a4]
movzx eax, word [ebp - 0x1a6]
mov ecx, edx
shl ecx, 0x10
or ecx, eax
cmp word [ebp - 0x224], 2
mov dword [ebp - 0x23c], ecx
ja 0x405234
mov ebx, eax
shl ebx, 0x10
or ebx, edx
mov edx, ecx
sub edx, esi
mov eax, edx
sar eax, 0x1f
xor edx, eax
sub edx, eax
mov eax, ebx
sub eax, esi
mov ecx, eax
sar ecx, 0x1f
xor eax, ecx
sub eax, ecx
cmp edx, eax
jle 0x405234
mov dword [ebp - 0x23c], ebx
mov eax, dword [ebp - 0x23c]
mov dword [esp], str._tCHS_current_addressable_sectors:_11u_n
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
test byte [ebp - 0x1b5], 2
jne 0x405f78
mov edx, dword [ebp - 0x244]
or edx, dword [ebp - 0x248]
jne 0x405287
mov eax, dword [ebp - 0x23c]
cmp eax, dword [ebp - 0x238]
jae 0x405279
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x248], eax
xor eax, eax
mov dword [ebp - 0x244], eax
mov ecx, dword [ebp - 0x244]
or ecx, dword [ebp - 0x248]
jne 0x4052a1
mov dword [ebp - 0x248], esi
mov dword [ebp - 0x244], edi
mov edx, dword [ebp - 0x244]
mov ebx, 0xf4240
mov eax, dword [ebp - 0x248]
mov dword [esp], str._tdevice_size_with_M__10241024:__11llu_MBytes_n
shrd eax, edx, 0xb
shr edx, 0xb
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov eax, dword [ebp - 0x248]
xor ecx, ecx
mov edx, dword [ebp - 0x244]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
shld edx, eax, 9
shl eax, 9
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00407d30
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], edx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], str._tdevice_size_with_M__10001000:__11llu_MBytes
call sub.cygwin1.dll_printf
cmp dword [ebp - 0x244], 0
ja 0x40532f
cmp dword [ebp - 0x248], 0x3e8
jbe 0x406116
mov edx, 0x3e8
xor eax, eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov edx, dword [ebp - 0x248]
mov ecx, dword [ebp - 0x244]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00407d30
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], str.__llu_GB__n
call sub.cygwin1.dll_printf
mov dword [esp], str.Capabilities:
call sub.cygwin1.dll_puts
mov dword [esp], 9
call sub.cygwin1.dll_putchar
cmp word [ebp - 0x22c], 1
je 0x405ebf
movzx eax, word [ebp - 0x1b6]
test ah, 2
jne 0x405e2c
cmp word [ebp - 0x224], 1
je 0x405e46
mov dword [esp], str.IORDY
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x1b6]
test ah, 8
je 0x4060ce
test ah, 4
je 0x405d42
mov dword [esp], str._can
call sub.cygwin1.dll_printf
mov dword [esp], str._be_disabled_
call sub.cygwin1.dll_printf
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
cmp word [ebp - 0x224], 1
je 0x405e6c
xor eax, eax
cmp word [ebp - 0x228], 1
mov dword [ebp - 0x220], eax
je 0x405ef7
cmp word [ebp - 0x228], 3
ja 0x405434
mov eax, dword [ebp - 0x1ec]
test ax, ax
jne 0x406133
cmp word [ebp - 0x230], 5
setne al
xor edx, edx
cmp word [ebp - 0x224], 3
seta dl
test eax, edx
je 0x405b91
xor ebx, ebx
cmp dword [ebp - 0x24c], 1
je 0x40633c
mov ecx, dword [ebp - 0x180]
movzx eax, cx
test ax, ax
setne dl
inc ax
setne al
movzx eax, al
test edx, eax
je 0x405488
test ch, 1
je 0x405488
mov ebx, 1
movzx edx, word [ebp - 0x172]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x406372
test ebx, ebx
je 0x405b91
movzx eax, word [ebp - 0x182]
mov dword [esp], str._tQueue_depth:__u
and eax, 0x1f
inc eax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
mov eax, dword [ebp - 0x22c]
test eax, eax
jne 0x405bad
cmp word [ebp - 0x224], 1
je 0x406347
mov dword [esp], str._tStandby_timer_values:_specd_by
call sub.cygwin1.dll_printf
test byte [ebp - 0x1b5], 0x20
je 0x406127
mov dword [esp], str.Standard
call sub.cygwin1.dll_printf
cmp word [ebp - 0x224], 3
jbe 0x405534
movzx edx, word [ebp - 0x1b4]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
je 0x40667d
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
mov dword [esp], str._tR_W_multiple_sector_transfer:
call sub.cygwin1.dll_printf
cmp word [ebp - 0x224], 2
ja 0x406037
movzx edx, word [ebp - 0x1ba]
test dl, dl
je 0x406623
mov dword [esp], str.Max___u_t
movzx eax, dl
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov dword [esp], str.Current_
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x1a2]
test ah, 1
je 0x4060e6
mov dword [esp], 0x40cc41
and eax, 0xff
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
cmp word [ebp - 0x224], 3
jbe 0x4055c4
test byte [ebp - 0x172], 8
jne 0x4065e6
cmp word [ebp - 0x224], 5
jbe 0x4055dd
mov eax, dword [ebp - 0x15c]
test ax, ax
jne 0x406634
mov dword [esp], str._tDMA:
call sub.cygwin1.dll_printf
test byte [ebp - 0x1b5], 1
je 0x405c2c
mov edx, dword [ebp - 0x1b0]
test dx, dx
je 0x405d4e
mov eax, dword [ebp - 0x19c]
test ax, ax
jne 0x405d5d
cmp word [ebp - 0x19a], 0
je 0x40674c
movzx eax, word [ebp - 0x19a]
test ax, ax
jne 0x405da6
test byte [ebp - 0x1ae], 4
je 0x40564a
mov eax, dword [ebp - 0x168]
test ax, ax
jne 0x4064c5
cmp byte [ebp - 0x231], 0
jne 0x40565c
cmp byte [ebp - 0x219], 0
jne 0x405668
mov dword [esp], 0x40cc4c
call sub.cygwin1.dll_printf
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
cmp word [ebp - 0x22c], 1
sete al
xor edx, edx
cmp word [ebp - 0x230], 5
setne dl
test eax, edx
je 0x40569e
cmp word [ebp - 0x1b6], 0
js 0x4069ac
test byte [ebp - 0x1ae], 2
je 0x405700
cmp word [ebp - 0x196], 0
jne 0x4056bb
cmp word [ebp - 0x194], 0
je 0x405700
mov dword [esp], str._t_____Cycle_time:
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x196]
test ax, ax
jne 0x4066bb
mov eax, dword [ebp - 0x194]
test ax, ax
jne 0x4066a3
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
lea esi, [esi]
lea edi, [edi]
mov dword [esp], str._tPIO:
call sub.cygwin1.dll_printf
test byte [ebp - 0x1ae], 2
je 0x4059d6
mov edx, dword [ebp - 0x198]
test dl, dl
je 0x4059d6
movzx eax, dl
xor ebx, ebx
shl eax, 3
or eax, 7
mov dword [ebp - 0x220], eax
jmp 0x405752
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 8
ja 0x40577d
test byte [ebp - 0x220], 1
je 0x405740
mov dword [esp + 4], ebx
mov dword [esp], str.pio_d
call sub.cygwin1.dll_printf
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 8
jbe 0x405752
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
test byte [ebp - 0x1ae], 2
je 0x4057e0
cmp word [ebp - 0x192], 0
jne 0x4057a6
cmp word [ebp - 0x190], 0
je 0x4057e0
mov dword [esp], str._t_____Cycle_time:
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x192]
test ax, ax
jne 0x4064ad
mov eax, dword [ebp - 0x190]
test ax, ax
jne 0x406495
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
lea esi, [esi]
movzx eax, word [ebp - 0x172]
and eax, 0xc000
cmp eax, 0x4000
je 0x406217
movzx eax, word [ebp - 0x11a]
and eax, 3
dec eax
je 0x406156
cmp word [ebp - 0x230], 5
setne al
xor edx, edx
cmp word [ebp - 0x224], 3
seta dl
test eax, edx
je 0x405af0
cmp word [ebp - 0x118], 0
jne 0x40584a
cmp word [ebp - 0x166], 0
jne 0x40584a
cmp word [ebp - 0x164], 0
je 0x405af0
mov dword [esp], str.Security:
call sub.cygwin1.dll_puts
movzx ecx, word [ebp - 0x160]
test cx, cx
setne al
xor edx, edx
cmp cx, 0xffff
setne dl
test eax, edx
jne 0x4063c1
movzx ecx, word [ebp - 0x118]
test ecx, ecx
mov dword [ebp - 0x220], ecx
je 0x405a65
xor ebx, ebx
jmp 0x4058c1
mov dword [esp], 0x40cc7b
call sub.cygwin1.dll_printf
mov eax, dword [ebx*4 + 0x4092a0]
mov dword [esp], eax
call sub.cygwin1.dll_puts
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 5
ja 0x405a37
test byte [ebp - 0x220], 1
jne 0x405890
mov dword [esp], str._tnot_t
jmp 0x405897
cmp ax, 0x848a
je 0x40672d
movzx eax, ax
test ah, 0x40
jne 0x406ab9
and eax, 0x1f00
mov edx, 1
shr eax, 8
mov dword [ebp - 0x230], eax
mov eax, dword [eax*4 + 0x4093a0]
mov esi, 3
mov dword [ebp - 0x22c], edx
mov dword [esp + 4], eax
mov dword [esp], str.ATAPI__s__with
call sub.cygwin1.dll_printf
cmp byte [ebp - 0x218], 0
mov dword [ebp - 0x224], esi
js 0x404a0e
mov dword [esp], str.non_
call sub.cygwin1.dll_printf
jmp 0x404a0e
movzx eax, cx
cmp eax, 0x42
je 0x406456
jle 0x4059a8
cmp eax, 0x52
je 0x40698e
cmp eax, 0x107
je 0x4069df
cmp cx, 0x1e
jbe 0x404b2f
mov dword [esp], str._n_tUsed:_unknown__minor_revision_code_0x_04x_
movzx eax, cx
mov dword [esp + 4], eax
jmp 0x404b2a
mov dword [esp], str.powers_up_in_standby__SET_FEATURES_subcmd_spins_up.
call sub.cygwin1.dll_puts
mov ecx, dword [ebp - 0x214]
jmp 0x404d25
mov eax, 3
mov dword [ebp - 0x224], eax
jmp 0x404afa
cmp eax, 0x27
je 0x40699d
cmp eax, 0x33
jne 0x405964
mov eax, str.ATA_8_ACS_revision_3e
mov edi, 8
jmp 0x404b17
mov dword [esp], str._n_tLikely_used_CD_ROM_ATAPI_1
call sub.cygwin1.dll_puts
jmp 0x404f6c
cmp word [ebp - 0x228], 4
setbe al
cmp word [ebp - 0x230], 5
sete dl
or eax, edx
test al, 1
je 0x405c3d
movzx eax, byte [ebp - 0x1b1]
cmp ax, 2
ja 0x405c3d
xor ebx, ebx
lea esi, [esi]
mov dword [esp + 4], ebx
mov dword [esp], str.pio_d
call sub.cygwin1.dll_printf
lea eax, [ebx + 1]
movzx ebx, ax
movzx eax, byte [ebp - 0x1b1]
cmp ax, bx
jae 0x405a10
jmp 0x40577d
test byte [ebp - 0x118], 2
je 0x405a65
mov dword [esp], str._tSecurity_level
call sub.cygwin1.dll_printf
test byte [ebp - 0x117], 1
jne 0x406871
mov dword [esp], str.high
call sub.cygwin1.dll_puts
movzx eax, byte [ebp - 0x166]
movzx esi, byte [ebp - 0x164]
mov dword [ebp - 0x220], eax
or eax, esi
je 0x405af0
mov dword [esp], 9
call sub.cygwin1.dll_putchar
mov edx, dword [ebp - 0x220]
test edx, edx
je 0x405abb
cmp word [ebp - 0x220], 0xff
mov eax, 0x1fc
je 0x405aab
mov eax, dword [ebp - 0x220]
add eax, eax
mov dword [esp + 4], eax
mov dword [esp], str._umin_for_SECURITY_ERASE_UNIT.
call sub.cygwin1.dll_printf
test esi, esi
je 0x405ade
cmp si, 0xff
mov eax, 0x1fc
je 0x405ace
lea eax, [esi + esi]
mov dword [esp + 4], eax
mov dword [esp], str._umin_for_ENHANCED_SECURITY_ERASE_UNIT.
call sub.cygwin1.dll_printf
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
lea esi, [esi]
movzx eax, word [ebp - 0x15e]
and eax, 0xc000
cmp eax, 0x4000
je 0x4061a0
cmp word [ebp - 0x224], 4
seta al
xor edx, edx
cmp word [ebp - 0x230], 5
setne dl
test eax, edx
je 0x405b86
cmp word [ebp - 0xd8], 0
js 0x406764
movzx ecx, word [ebp - 0x1a]
cmp cl, 0xa5
jne 0x405f42
cmp byte [ebp - 0x232], 0
mov eax, 0x40cd94
jne 0x405b51
mov eax, 0x40c016
mov dword [esp + 4], eax
mov dword [esp], str.Checksum:__scorrect
call sub.cygwin1.dll_printf
cmp byte [ebp - 0x232], 0
jne 0x406656
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 8]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.cygwin1.dll_putc
add esp, 0x27c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x220]
test eax, eax
jne 0x4054c4
mov eax, dword [ebp - 0x22c]
test eax, eax
je 0x4054de
cmp word [ebp - 0x230], 5
je 0x405bc4
test byte [ebp - 0x1b5], 0x10
jne 0x406445
cmp word [ebp - 0x18a], 0
jne 0x405bdc
cmp word [ebp - 0x188], 0
je 0x4055dd
mov dword [esp], str._tOverlap_support:
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x18a]
test ax, ax
jne 0x40647d
mov eax, dword [ebp - 0x188]
test ax, ax
jne 0x406465
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
mov dword [esp], str._tDMA:
call sub.cygwin1.dll_printf
test byte [ebp - 0x1b5], 1
jne 0x4055f6
mov dword [esp], str.not_supported
call sub.cygwin1.dll_puts
jmp 0x405700
mov dword [esp], str.unknown
call sub.cygwin1.dll_puts
jmp 0x405789
movzx edx, word [ebp - 0x212]
xor eax, eax
xor ebx, ebx
movzx ecx, word [ebp - 0x216]
mov dword [ebp - 0x26c], eax
mov edi, dword [ebp - 0x26c]
mov dword [ebp - 0x270], edx
mov eax, dword [ebp - 0x270]
imul edi, ecx
mul ecx
mov esi, edx
add esi, edi
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x270]
movzx edx, word [ebp - 0x20c]
imul eax, ebx
mov ebx, dword [ebp - 0x260]
mov dword [ebp - 0x270], edx
add esi, eax
xor eax, eax
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x260]
mul dword [ebp - 0x270]
mov dword [ebp - 0x25c], esi
mov edi, dword [ebp - 0x25c]
mov esi, eax
mov eax, dword [ebp - 0x26c]
mov ecx, edx
imul ebx, eax
mov eax, dword [ebp - 0x270]
mov dword [esp], 0x40cb10
imul eax, edi
add ecx, ebx
lea edi, [ecx + eax]
call sub.cygwin1.dll_puts
cmp word [ebp - 0x228], 1
jne 0x4051da
mov eax, dword [ebp - 0x210]
test ax, ax
jne 0x405d13
cmp word [ebp - 0x20e], 0
je 0x4051da
mov dword [esp], str._tbytes_track:__u
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x20e]
mov dword [esp], str._tbytes_sector:__u_n
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4051da
mov dword [esp], str._cannot
jmp 0x4053da
mov eax, dword [ebp - 0x19c]
test ax, ax
je 0x405622
movzx eax, ax
mov edi, 0x73
mov esi, eax
mov dword [ebp - 0x220], eax
shr esi, 8
lea eax, [ebp - 0x219]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov ecx, dword [ebp - 0x220]
mov dword [esp], ecx
call fcn.00404890
mov byte [ebp - 0x231], al
movzx eax, word [ebp - 0x19a]
test ax, ax
je 0x405632
movzx eax, ax
mov ebx, 0x6d
mov esi, eax
mov dword [ebp - 0x220], eax
shr esi, 8
lea eax, [ebp - 0x219]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x220]
mov dword [esp], eax
call fcn.00404890
add byte [ebp - 0x231], al
jmp 0x405632
and edx, 0x3fff
cmp edx, 0xff
jle 0x404bbd
mov eax, 6
mov dword [ebp - 0x224], eax
test edi, edi
je 0x404cbc
cmp word [ebp - 0x224], di
jbe 0x406043
mov ecx, dword [ebp - 0x224]
mov dword [esp], str._some_of__u_n
mov dword [esp + 4], ecx
jmp 0x404ccd
mov dword [esp], str.LBA_
call sub.cygwin1.dll_printf
cmp word [ebp - 0x224], 1
jne 0x4053ae
mov dword [esp], str.IORDY_not_likely
call sub.cygwin1.dll_printf
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
cmp word [ebp - 0x224], 1
jne 0x405405
mov eax, dword [ebp - 0x1f0]
test ax, ax
je 0x405405
mov dword [esp], str._tBuffer_type:__04x:
movzx esi, ax
mov dword [esp + 4], esi
call sub.cygwin1.dll_printf
cmp si, 1
jbe 0x4067d5
mov dword [esp], str.dual_port__multi_sector
call sub.cygwin1.dll_printf
cmp si, 2
ja 0x4069bd
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
jmp 0x405405
cmp word [ebp - 0x230], 5
je 0x406330
movzx eax, word [ebp - 0x1b6]
test ah, 0x40
jne 0x406324
test ah, 0x20
je 0x405397
mov dword [esp], str.Cmd_overlap_
call sub.cygwin1.dll_printf
jmp 0x405390
movzx ecx, word [ebp - 0x1ee]
test cx, cx
setne al
xor edx, edx
cmp cx, 0xffff
setne dl
test eax, edx
je 0x40541b
push ecx
fild dword [esp]
add esp, 4
fmul dword [0x40d4c4]
mov dword [esp], str._tBuffer_size:__.1fkB
fstp qword [esp + 4]
call sub.cygwin1.dll_printf
mov eax, 1
mov dword [ebp - 0x220], eax
jmp 0x40541b
mov eax, 0xa5
mov dword [esp + 0xc], eax
mov eax, 0x100
movzx edx, byte [ebp - 0x232]
mov dword [esp + 4], ecx
mov dword [esp], str._tIntegrity_word_not_set__found_0x_04x__expected_0x_02x_02x__n
sub eax, edx
mov dword [esp + 8], eax
call sub.cygwin1.dll_printf
add esp, 0x27c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebp - 0x238]
mov dword [esp], str._tLBA____user_addressable_sectors:_11u_n
mov dword [esp + 4], edx
call sub.cygwin1.dll_printf
movzx edx, word [ebp - 0x172]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
jne 0x405257
test dh, 4
je 0x405257
movzx eax, word [ebp - 0x14a]
movzx ecx, word [ebp - 0x14c]
mov edx, eax
mov ebx, ecx
xor eax, eax
xor ecx, ecx
or eax, ecx
movzx ecx, word [ebp - 0x14e]
shl edx, 0x10
or edx, ebx
xor ebx, ebx
shld ebx, ecx, 0x10
shl ecx, 0x10
or edx, ebx
or eax, ecx
movzx ecx, word [ebp - 0x150]
mov dword [ebp - 0x278], ecx
xor ecx, ecx
mov dword [ebp - 0x274], ecx
mov ecx, dword [ebp - 0x278]
or ecx, eax
mov dword [ebp - 0x248], ecx
mov ecx, dword [ebp - 0x274]
mov eax, dword [ebp - 0x248]
or ecx, edx
mov dword [ebp - 0x244], ecx
mov edx, dword [ebp - 0x244]
mov dword [esp + 4], eax
mov dword [esp], str._tLBA48__user_addressable_sectors:_11llu_n
mov dword [esp + 8], edx
call sub.cygwin1.dll_printf
jmp 0x405257
movzx edx, word [ebp - 0x1ba]
jmp 0x405569
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
jmp 0x404cd2
mov dword [esp], str._n_tSupported:
call sub.cygwin1.dll_printf
mov eax, dword [ebp - 0x178]
mov ebx, 0xe
add eax, eax
movzx eax, ax
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x224]
call fcn.00404700
movzx esi, ax
jmp 0x4060ab
cmp word [ebp - 0x220], 0
js 0x406380
mov eax, dword [ebp - 0x220]
add eax, eax
movzx eax, ax
mov dword [ebp - 0x220], eax
lea eax, [ebx - 1]
movzx ebx, ax
cmp bx, si
ja 0x406086
cmp word [ebp - 0x224], 2
ja 0x404b4c
mov eax, 3
mov dword [ebp - 0x224], eax
jmp 0x404b4c
mov dword [esp], str._may_be_
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x1b6]
jmp 0x4053ca
mov dword [esp], 0x40cf1c
call sub.cygwin1.dll_puts
jmp 0x4055ad
and edx, 0x3fff
cmp edx, 0x1f
jle 0x404c3e
mov esi, 5
mov dword [ebp - 0x224], esi
jmp 0x405e01
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
jmp 0x40536a
mov dword [esp], str.Vendor
jmp 0x40550c
mov dword [esp], str._tbytes_avail_on_r_w_long:__u
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov eax, 1
mov dword [ebp - 0x220], eax
jmp 0x405434
mov dword [esp], str._tRemovable_Media_Status_Notification_feature_set_supported
call sub.cygwin1.dll_puts
jmp 0x405808
mov dword [esp], str._tDRQ_response:
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x218]
and eax, 0x60
cmp eax, 0x20
je 0x4069ee
jg 0x4066d3
test eax, eax
jne 0x4066dc
mov dword [esp], str.3ms.
jmp 0x4066e3
mov dword [esp], str.HW_reset_results:
call sub.cygwin1.dll_puts
test byte [ebp - 0x15d], 0x20
je 0x4065da
mov dword [esp], str._tCBLID__above_Vih
call sub.cygwin1.dll_puts
test byte [ebp - 0x15e], 1
je 0x4065bc
mov dword [esp], str._tDevice_num__0
call sub.cygwin1.dll_printf
movzx edx, word [ebp - 0x15e]
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x220]
and eax, 6
cmp eax, 2
je 0x406a36
cmp eax, 4
je 0x406a47
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
jmp 0x405b07
mov dword [esp], str.Commands_features:_n_tEnabled_tSupported:
call sub.cygwin1.dll_puts
movzx eax, word [ebp - 0x174]
movzx edx, word [ebp - 0x16e]
mov dword [esp], str.obsolete_82_15_
and eax, 0x7fff
call fcn.00404730
movzx ecx, word [ebp - 0x172]
mov eax, ecx
and eax, 0xc000
cmp eax, 0x4000
je 0x4069fa
movzx ecx, word [ebp - 0x170]
mov eax, ecx
and eax, 0xc000
cmp eax, 0x4000
je 0x406920
movzx eax, word [ebp - 0x172]
and eax, 0xc000
cmp eax, 0x4000
je 0x4068c6
cmp dword [ebp - 0x24c], 1
je 0x4068bb
mov ecx, dword [ebp - 0x180]
movzx eax, cx
test ax, ax
setne dl
inc ax
setne al
movzx eax, al
test edx, eax
je 0x4062c4
mov dword [esp], str.unknown_76_15_
movzx eax, cx
mov edx, eax
call fcn.00404730
cmp dword [ebp - 0x24c], 1
je 0x4068b0
mov ecx, dword [ebp - 0x17c]
movzx eax, cx
test ax, ax
setne dl
inc ax
setne al
movzx eax, al
test edx, eax
je 0x406302
movzx edx, word [ebp - 0x17a]
movzx eax, cx
mov dword [esp], str.unknown_78_15_
call fcn.00404730
movzx eax, word [ebp - 0x7c]
test al, 1
je 0x4057f7
mov dword [esp], str.unknown_206_15_
mov edx, eax
and edx, 0x3f
call fcn.00404730
jmp 0x4057f7
mov dword [esp], str.Cmd_queuing_
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x1b6]
jmp 0x405edd
mov ecx, dword [ebp - 0x180]
jmp 0x40547e
mov dword [esp], str._tCan
call sub.cygwin1.dll_printf
cmp word [ebp - 0x1b8], 0
je 0x40689f
mov dword [esp], str._perform_double_word_IO
call sub.cygwin1.dll_puts
jmp 0x405540
test dl, 2
jne 0x4054a9
jmp 0x4054a1
mov dword [esp + 4], ebx
mov dword [esp], 0x40d01a
call sub.cygwin1.dll_printf
cmp bx, word [ebp - 0x224]
jbe 0x4063a9
mov dword [ebp - 0x224], ebx
mov eax, ebx
call fcn.00404700
movzx esi, ax
cmp word [ebp - 0x228], bx
jbe 0x406094
mov dword [ebp - 0x228], ebx
jmp 0x406094
mov dword [esp + 4], ecx
mov dword [esp], str._tMaster_password_revision_code___u_n
call sub.cygwin1.dll_printf
jmp 0x405874
cmp di, 2
je 0x4067e1
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 2
setbe dl
test eax, edx
jne 0x4067e1
cmp di, 1
je 0x40641c
test di, di
sete al
xor edx, edx
cmp word [ebp - 0x224], 1
setbe dl
test eax, edx
je 0x405e01
movzx eax, word [ebp - 0x1b6]
test ah, 0xc
jne 0x406435
test byte [ebp - 0x1ae], 2
je 0x405e01
mov edx, 2
mov dword [ebp - 0x224], edx
jmp 0x405e01
mov dword [esp], str._tATA_sw_reset_required
call sub.cygwin1.dll_puts
jmp 0x405bc4
mov eax, str.ATA_8_ACS_revision_3f
mov edi, 8
jmp 0x404b17
mov dword [esp], str.__uus_to_clear_BSY_after_SERVICE_cmd.
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x405c07
mov dword [esp], str.__uus_to_release_bus.
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x405bf8
mov dword [esp], str.__IORDY_flow_control_uns
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4057d1
mov dword [esp], str._no_flow_control_uns
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4057c2
movzx eax, ax
mov ecx, 0x75
mov esi, eax
mov dword [ebp - 0x220], eax
shr esi, 8
lea eax, [ebp - 0x219]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
mov edx, dword [ebp - 0x220]
mov dword [esp], edx
call fcn.00404890
add byte [ebp - 0x231], al
jmp 0x40564a
mov dword [esp], str.Parallel
call sub.cygwin1.dll_printf
test bl, 1
je 0x404ed6
mov dword [esp], str.__ATA8_APT
call sub.cygwin1.dll_printf
jmp 0x404ed6
mov dword [esp], str.__Revision:
call sub.cygwin1.dll_printf
cmp esi, 0x21
je 0x4069ce
mov dword [esp + 4], esi
mov dword [esp], str.0x_04x
call sub.cygwin1.dll_printf
jmp 0x404eed
mov dword [esp], str._n_tSupported:_CD_ROM_ATAPI
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x186]
mov ebx, 1
shr eax, 1
mov dword [ebp - 0x220], eax
jmp 0x40658b
shr dword [ebp - 0x220], 1
lea eax, [ebx + 1]
movzx ebx, ax
cmp bx, 0xe
ja 0x404f60
test byte [ebp - 0x220], 1
je 0x406575
mov dword [esp + 4], ebx
mov dword [esp], str.__u
call sub.cygwin1.dll_printf
jmp 0x406575
and edx, 0x27ff
je 0x404bd6
mov eax, 6
jmp 0x405dfb
mov dword [esp], str._tDevice_num__1
call sub.cygwin1.dll_printf
movzx ecx, byte [ebp - 0x15d]
mov dword [ebp - 0x220], ecx
jmp 0x4061eb
mov dword [esp], str._tCBLID__below_Vih
jmp 0x4061c0
mov dword [esp], str._tAdvanced_power_management_level:
call sub.cygwin1.dll_printf
movzx ecx, word [ebp - 0x162]
movzx edx, cx
mov eax, edx
and eax, 0xff00
cmp eax, 0x4000
je 0x406a1a
mov dword [esp + 4], edx
mov dword [esp], str.unknown_setting__0x_04x__n
call sub.cygwin1.dll_printf
jmp 0x4055c4
mov dword [esp], str.not_supported
call sub.cygwin1.dll_puts
jmp 0x4055ad
mov dword [esp], str._tRecommended_acoustic_management_value:__u__current_value:__u_n
movzx eax, ax
movzx edx, al
mov dword [esp + 8], edx
shr eax, 8
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4055dd
movzx edx, byte [ebp - 0x232]
mov eax, 0x100
mov dword [esp], str.__0x_02x___expected_0x_02x_n
sub eax, edx
mov dword [esp + 8], eax
mov dword [esp + 4], edx
call sub.cygwin1.dll_printf
jmp 0x405b6e
test dl, 1
jne 0x40681b
mov dword [esp], str.__no
call sub.cygwin1.dll_printf
mov dword [esp], str.device_specific_minimum
call sub.cygwin1.dll_puts
jmp 0x405540
mov dword [esp], str._recommended_uns
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4056e6
mov dword [esp], str._min_uns
movzx eax, ax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4056d7
cmp eax, 0x40
je 0x406a7a
mov dword [esp], str.unknown.
call sub.cygwin1.dll_puts
mov dword [esp], str._tPacket_size:
call sub.cygwin1.dll_printf
movzx eax, word [ebp - 0x218]
and eax, 3
je 0x40688e
dec eax
je 0x406a69
mov dword [esp], str.Unknown
call sub.cygwin1.dll_puts
jmp 0x40536a
mov dword [esp], str._tCHS_addressing_not_supported
call sub.cygwin1.dll_puts
jmp 0x40524a
xor ebx, ebx
mov ecx, 4
mov dword [ebp - 0x22c], ebx
mov dword [ebp - 0x224], ecx
mov dword [esp], str.CompactFlash_ATA_device__with
jmp 0x4049fc
mov dword [esp], str.sdma_u
movzx eax, dh
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x405668
mov dword [esp], str.CFA_power_mode_1:_n_t
call sub.cygwin1.dll_printf
test byte [ebp - 0xd7], 0x10
jne 0x406882
mov dword [esp], 0x40d28a
call sub.cygwin1.dll_printf
mov dword [esp], str.abled
call sub.cygwin1.dll_printf
test byte [ebp - 0xd7], 0x20
jne 0x406a58
mov dword [esp], 0xa
call sub.cygwin1.dll_putchar
movzx eax, word [ebp - 0xd8]
and eax, 0xfff
je 0x405b31
mov dword [esp + 4], eax
mov dword [esp], str._tMaximum_current___uma_n
call sub.cygwin1.dll_printf
jmp 0x405b31
mov dword [esp], str.single_port__single_sector
jmp 0x405e9f
movzx eax, word [ebp - 0x172]
and eax, 0xc000
cmp eax, 0x4000
jne 0x4063fb
mov ecx, 3
mov dword [ebp - 0x224], ecx
jmp 0x405e01
cmp word [ebp - 0x168], 0
jne 0x404ca9
jmp 0x404c98
mov dword [esp], str.__with
jmp 0x40668d
mov dword [esp], str.Serial
call sub.cygwin1.dll_printf
test bl, 0xf
je 0x404ed6
test bl, 1
jne 0x406aa8
test bl, 2
jne 0x406a97
test bl, 4
jne 0x406a86
test bl, 8
je 0x404ed6
mov dword [esp], str.__SATA_Rev_2.5
call sub.cygwin1.dll_printf
jmp 0x404ed6
mov dword [esp], str.maximum
call sub.cygwin1.dll_puts
jmp 0x405a65
mov dword [esp], 0x40d2ed
jmp 0x406784
mov dword [esp], str.12_bytes
call sub.cygwin1.dll_puts
jmp 0x40536a
mov dword [esp], 0x40d2fa
call sub.cygwin1.dll_printf
jmp 0x406361
mov ecx, dword [ebp - 0x17c]
jmp 0x4062ec
mov ecx, dword [ebp - 0x180]
jmp 0x4062b3
cmp word [ebp - 0x16c], 0
jns 0x40628b
movzx ecx, word [ebp - 0x12a]
mov eax, ecx
and eax, 0xc000
cmp eax, 0x4000
jne 0x40628b
movzx edx, word [ebp - 0x128]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
jne 0x40628b
mov dword [esp], 0x4094e0
and ecx, 0x3fff
mov eax, ecx
call fcn.00404730
jmp 0x40628b
movzx edx, word [ebp - 0x16a]
mov eax, edx
and eax, 0xc000
cmp eax, 0x4000
jne 0x406274
mov dword [esp], 0x409520
and ecx, 0x3fff
mov eax, ecx
call fcn.00404730
jmp 0x406274
mov dword [esp], str._n_tUsed:_ATAPI_for_CD_ROMs__SFF_8020i__r2.5
mov esi, 1
call sub.cygwin1.dll_printf
jmp 0x404f3b
and edx, 0x3fff
jne 0x404ca9
movzx eax, word [ebp - 0x174]
and eax, 0x77ff
cmp eax, 0xf
jg 0x404ca9
jmp 0x404c78
mov eax, str.ATA_8_ACS_revision_3b
mov edi, 8
jmp 0x404b17
mov eax, str.ATA_8_ACS_revision_3c
mov edi, 8
jmp 0x404b17
mov dword [esp], str._t_____Interleaved_DMA_support
call sub.cygwin1.dll_puts
jmp 0x40569e
mov dword [esp], str._with_read_caching_ability
call sub.cygwin1.dll_printf
jmp 0x405eae
mov dword [esp], str.ATA8_AST_T13_Project_D1697_Revision_0b
call sub.cygwin1.dll_printf
jmp 0x404eed
mov eax, str.ATA_8_ACS_revision_2d
mov edi, 8
jmp 0x404b17
mov dword [esp], str._10ms_with_INTRQ
jmp 0x4066e3
movzx edx, word [ebp - 0x16c]
and ecx, 0x3fff
mov eax, ecx
mov dword [esp], 0x409560
call fcn.00404730
jmp 0x40625b
mov dword [esp], str._u__0x_x__n
movzx eax, cl
mov dword [esp + 8], eax
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
jmp 0x4055c4
mov dword [esp], str._determined_by_the_jumper
call sub.cygwin1.dll_printf
jmp 0x406206
mov dword [esp], str._determined_by_CSEL
call sub.cygwin1.dll_printf
jmp 0x406206
mov dword [esp], str._and_required_by_some_commands
call sub.cygwin1.dll_printf
jmp 0x4067a2
mov dword [esp], str.16_bytes
call sub.cygwin1.dll_puts
jmp 0x40536a
mov dword [esp], str.50us.
jmp 0x4066e3
mov dword [esp], str.__SATA_II_Extensions
call sub.cygwin1.dll_printf
jmp 0x406857
mov dword [esp], str.__SATA_1.0a
call sub.cygwin1.dll_printf
jmp 0x40684e
mov dword [esp], str.__ATA8_AST
call sub.cygwin1.dll_printf
jmp 0x406845
mov dword [esp], str.Unknown_device_type:_n_tbits_1514_of_general_configuration_word_0_both_set_to_1.
call sub.cygwin1.dll_puts
mov dword [esp], 0x16
call sub.cygwin1.dll_exit
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop