Function at 0x66de6f
Capabilities:
Get storage device properties

Disassembly:
jmp 0x66de0b
lea esp, [esp + 4]
jmp 0x66de27
pop ebp
and al, 0xd7
cmp ebp, dword [ebx + 0x28fd1aeb]
add cl, ch
hlt
jmp 0x66de43
jo 0x66de22
jo 0x66de59
loop 0x66deac
push 0x28fde7
out 0xfd, eax
sub byte [eax], al
jmp 0x66de5f
pop eax
stosd dword es:[edi], eax
dec ebx
pop ss
adc byte [esi], 0xe8
mov al, 0x20
add dword [eax], eax
call fcn.0067ff14
stosb byte es:[edi], al
int 0x3c
aam 0x58
rol dword [ebx + 0x26], cl
aad 0x74
add ebx, ebp
jmp 0x66de8b
push 0x72e9689b
loopne 0x66ddff
jb 0x66de3e
loopne 0x66def4
out dx, al
mov dword [eax - 0x2f], edi
test byte [ebx], ah
mov bl, 0xd6
and eax, 0x999059c
push 0x24648d9b
add al, 0xe9
mov al, byte [0xa6000322]
sal dword [eax], 0x99
salc
dec ecx
fnstcw word [eax + 0x61c1fe4b]
int1
nop
arpl si, sp
push edx
mul dword [edi - 0x15]
sbb bh, byte [eax + 0x61]
loope 0x66df1e
jno 0x66debe
adc bl, ah
xor eax, 0x6e0b9b16
popfd
jecxz 0x66dee5
push ss
wait
or ebp, dword [esi - 0x63]
jge 0x66ded8
cmpsd dword [esi], dword es:[edi]
aaa
push edx
mov eax, dword [0x7fef684e]
sbb ch, cl
adc eax, 0xa1aeb7f
stc
out dx, al
add byte [ebp + 0x6d8f7c15], al
and eax, 0xa15237a7
inc ecx
jae 0x66decc
jg 0x66deda
jmp 0x1b525dda
jmp 0x66dedf
invalid
add edi, esi
pop ss
invalid
cli
jo 0x66dec3
xor dword [eax + 0x55], 0xacc519eb
push ebp
jmp 0x66defb
lodsb al, byte [esi]
pop edi
cli
jne 0x46f65b01
push ss
popfd
or eax, 0x434ba754
rol dword [ebx + 0x26], cl
aad 0x37
inc ebx
aad 0x37
cmc
jp 0x66dee3
jmp 0x66df17
mov ebp, esp
jmp 0x66df33
add byte [eax - 0x55], bl
push 0xffffffffffffff97
pop es
xchg edi, eax
add ebp, ebp
lds edx, [edx - 0x40]
cmpsd dword [esi], dword es:[edi]
push edx
mov eax, 0xa5c24cd8
push esp
jmp 0x66df4f
sub esp, 0x224
jmp 0x66df6b
jmp 0x66df94
push ebx
jmp 0x6a337d
inc dword [ebp - 4]
cmp dword [ebp - 8], esi
je 0x6a338d
jmp 0x6a335c
mov eax, dword [0x6787e4]
jmp 0x6a344e
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
jmp 0x6a3641
push esi
xor esi, esi
push edi
mov dword [ebp - 8], esi
mov dword [ebp - 4], esi
mov ebx, 0x428
cmp dword [ebp - 4], 4
jae 0x6a335c
push dword [ebp - 4]
lea eax, [ebp - 0x224]
push 0x675b50
push eax
call fcn.0067d70e
xchg ebp, eax
mov eax, dword [0x6787e4]
mov eax, dword [eax + 4]
add esp, 0xc
push esi
push esi
push 3
push esi
push 7
push esi
lea ecx, [ebp - 0x224]
push ecx
call eax
mov dword [ebp - 0xc], eax
cmp eax, 0xffffffff
je 0x6a3319
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push ebx
push 8
push dword [0x6787a8]
stosd dword es:[edi], eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], esi
call dword [fcn.006787cc]
push esi
mov edi, eax
lea eax, [ebp - 0x10]
push eax
push ebx
push edi
push 0xc
lea eax, [ebp - 0x1c]
push eax
push 0x2d1400
push dword [ebp - 0xc]
call fcn.0067dbb0
lodsd eax, dword [esi]
test eax, eax
je 0x6a333d
mov eax, dword [edi + 0x18]
cmp eax, esi
je 0x6a333d
cmp eax, ebx
jae 0x6a333d
push 0xff
add eax, edi
push eax
push pe_nt_image_headers32
push dword [ebp + 8]
call fcn.0068e443
add esp, 0x10
mov dword [ebp - 8], 1
jmp 0x6a333d
push edi
push esi
push dword [0x6787a8]
jmp 0x6a3480
call dword [eax + 0x18]
push dword [ebp - 0xc]
mov eax, dword [0x6787e4]
call dword [eax + 0x10]
jmp 0x6a3319
leave
ret