Function at 0x4ad0b4fa
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ad01a50
push 0x4ad1a570
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ecx
sub esp, 0x280
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
xor edi, edi
mov dword [ebp - 0x20], edi
cmp dword [0x4ad22878], edi
je 0x4ad0b544
push edi
push 0x2335
call fcn.4ad1391e
pop ecx
pop ecx
call fcn.4ad0aafe
cmp dword [0x4ad1c010], edi
je 0x4ad0b8b8
cmp dword [0x4ad1cfd8], edi
jne 0x4ad0b563
push 0x4ad1c018
call fcn.4ad157af
pop ecx
cmp byte [0x4ad20be6], 0
je 0x4ad0b575
mov dword [ebp - 0x28], 0x4ad20c00
jmp 0x4ad0b5a5
push str.PROMPT
call fcn.4ad06377
mov dword [ebp - 0x28], eax
cmp eax, edi
je 0x4ad0b5a5
mov esi, 0x4ad20c00
mov ecx, esi
test ecx, ecx
je 0x4ad0b59b
push eax
push esi
call dword [sym.imp.MSVCRT.dll_wcscpy]
pop ecx
pop ecx
mov dword [ebp - 0x28], esi
mov byte [0x4ad20be6], 1
push edi
mov ebx, 0x4ad228a0
push ebx
call fcn.4ad14ffd
mov edi, 0x4ad21020
mov esi, edi
mov dword [ebp - 0x24], esi
and word [0x4ad21020], 0
mov eax, 0x400
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x4ad0b87a
cmp word [ecx], 0
je 0x4ad0b87a
mov edi, dword [sym.imp.MSVCRT.dll__snwprintf]
mov eax, dword [ebp - 0x28]
mov ax, word [eax]
test ax, ax
je 0x4ad0b894
cmp ax, 0x24
je 0x4ad0b647
movzx eax, ax
push eax
push 0x4ad1c1c0
push dword [ebp - 0x34]
push esi
call edi
add esp, 0x10
lea esi, [esi + eax*2]
mov dword [ebp - 0x24], esi
sub dword [ebp - 0x34], eax
call fcn.4ad0e6fd
test al, al
je 0x4ad0b63e
mov eax, dword [ebp - 0x28]
mov ax, word [eax]
push eax
call fcn.4ad0e724
test eax, eax
je 0x4ad0b63e
mov eax, dword [ebp - 0x28]
mov ax, word [eax]
mov word [ebp - 0x20], ax
jmp 0x4ad0b871
and dword [ebp - 0x20], 0
jmp 0x4ad0b871
add dword [ebp - 0x28], 2
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp word [0x4ad1c7f8], ax
je 0x4ad0b697
mov ebx, 0x4ad1c7f8
mov dword [ebp - 0x298], ebx
mov eax, dword [ebp - 0x28]
mov ax, word [eax]
push eax
call dword [sym.imp.MSVCRT.dll_towupper]
pop ecx
mov ecx, dword [ebp - 0x298]
cmp ax, word [ecx]
je 0x4ad0b68f
inc dword [ebp - 0x1c]
add ebx, 6
mov dword [ebp - 0x298], ebx
cmp word [ebx], 0
jne 0x4ad0b664
mov ebx, 0x4ad228a0
mov eax, dword [ebp - 0x1c]
lea eax, [eax + eax*2]
shl eax, 1
cmp word [eax + 0x4ad1c7f8], 0
je 0x4ad0b894
mov cx, word [eax + 0x4ad1c7fa]
cmp cx, 8
jne 0x4ad0b6c3
movzx eax, word [eax + 0x4ad1c7fc]
jmp 0x4ad0b859
movzx eax, cx
dec eax
cmp eax, 9
ja case.0x4ad0b6d0.7
jmp dword [eax*4 + 0x4ad0b8c7]
push dword [ebp - 0x34]
push esi
push 1
push 0
call fcn.4ad05535
jmp 0x4ad0b868
push dword [ebp - 0x34]
push esi
push 1
push 0
call fcn.4ad052e5
jmp 0x4ad0b868
push ebx
jmp 0x4ad0b721
push 0x20
lea eax, [ebp - 0x74]
push eax
call fcn.4ad0ab5a
lea eax, [ebp - 0x74]
push eax
push 1
push 0x2350
call fcn.4ad14424
add esp, 0xc
push 0x4ad264e0
push 0x4ad1c178
jmp 0x4ad0b85f
cmp word [ebp - 0x20], 0
je 0x4ad0b73c
push str._b_b___b_b
jmp 0x4ad0b839
push 0x4ad1c020
jmp 0x4ad0b839
push 0x4ad1c018
jmp 0x4ad0b839
cmp byte [0x4ad1cf7c], 0
je 0x4ad0b871
call fcn.4ad102d5
cmp dword [ebp - 0x34], 0
je 0x4ad0b871
mov ecx, eax
dec eax
test ecx, ecx
je 0x4ad0b871
mov word [esi], 0x2b
inc esi
inc esi
mov dword [ebp - 0x24], esi
dec dword [ebp - 0x34]
jne 0x4ad0b76c
jmp 0x4ad0b871
cmp byte [0x4ad1cf7c], 0
je 0x4ad0b871
push 2
push ebx
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.MSVCRT.dll_wcsncpy]
add esp, 0xc
mov word [ebp - 0x80], 0x5c
and word [ebp - 0x7e], 0
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 4
jne 0x4ad0b871
and word [ebp - 0x80], 0
mov dword [ebp - 0x290], 0x104
and dword [ebp - 4], 0
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x28c]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.4ad1a3f2
mov dword [ebp - 0x7c], eax
or dword [ebp - 4], 0xffffffff
jmp 0x4ad0b825
cmp dword [ebp - 0x7c], 0
je 0x4ad0b844
cmp dword [ebp - 0x7c], 0x8ca
je 0x4ad0b871
push 0x4ad01a40
push dword [ebp - 0x34]
push esi
call edi
add esp, 0xc
jmp 0x4ad0b868
lea eax, [ebp - 0x28c]
push eax
push 0x4ad01a38
jmp 0x4ad0b85f
movzx eax, word [0x4ad228a0]
push eax
push 0x4ad1c1c0
push dword [ebp - 0x34]
push esi
call edi
add esp, 0x10
lea esi, [esi + eax*2]
mov dword [ebp - 0x24], esi
sub dword [ebp - 0x34], eax
add dword [ebp - 0x28], 2
jmp 0x4ad0b5e6
push ebx
push 0x4ad1c238
push eax
push edi
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
lea esi, [eax*2 + 0x4ad21020]
jmp 0x4ad0b899
mov edi, 0x4ad21020
and word [esi], 0
push edi
push 0x4ad01818
call fcn.4ad157af
pop ecx
pop ecx
cmp dword [0x4ad22878], 0
je 0x4ad0b8b8
call fcn.4ad0aafe
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret