Function at 0x7f2e47e3
Capabilities:
Get disk information

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
xor ebx, ebx
cmp dword [0x7f30bacc], ebx
push esi
push edi
je 0x7f2e481a
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
jmp 0x7f2e49aa
mov eax, dword [ebp + 8]
cmp eax, 0xffff
jbe 0x7f2e4883
push eax
call fcn.7f2daf04
mov edi, eax
mov eax, dword [0x7f30b088]
inc edi
imul eax, edi
pop ecx
push eax
call fcn.7f2d55af
test eax, eax
mov esi, dword [0x7f30b088]
je 0x7f2e485f
mov eax, esi
imul eax, edi
cmp eax, ebx
je 0x7f2e485f
add eax, 3
and eax, 0xfffffffc
call fcn.7f2fec90
mov dword [ebp - 4], esp
jmp 0x7f2e4862
mov dword [ebp - 4], ebx
cmp dword [ebp - 4], ebx
je 0x7f2e488c
imul esi, edi
push ebx
push ebx
push esi
push dword [ebp - 4]
push edi
push dword [ebp + 8]
push ebx
push dword [0x7f30bac8]
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
jmp 0x7f2e4886
mov dword [ebp - 4], eax
mov esi, dword [0x7f30b088]
cmp dword [ebp + 0xc], ebx
je 0x7f2e48d1
cmp dword [ebp + 0x10], ebx
jbe 0x7f2e48d1
imul esi, dword [ebp + 0x10]
inc esi
push esi
mov dword [ebp - 8], esi
call fcn.7f2d55af
test eax, eax
je 0x7f2e48be
cmp esi, ebx
je 0x7f2e48be
mov eax, esi
add eax, 3
and eax, 0xfffffffc
call fcn.7f2fec90
mov dword [ebp + 8], esp
jmp 0x7f2e48c1
mov dword [ebp + 8], ebx
cmp esi, ebx
jbe 0x7f2e48d9
cmp dword [ebp + 8], ebx
jne 0x7f2e48d9
xor eax, eax
jmp 0x7f2e49aa
mov dword [ebp - 8], ebx
mov dword [ebp + 8], ebx
jmp 0x7f2e48df
mov esi, dword [0x7f30b088]
cmp dword [ebp + 0x20], ebx
je 0x7f2e4919
cmp dword [ebp + 0x24], ebx
jbe 0x7f2e4919
imul esi, dword [ebp + 0x24]
inc esi
push esi
call fcn.7f2d55af
test eax, eax
je 0x7f2e490d
cmp esi, ebx
je 0x7f2e490d
mov eax, esi
add eax, 3
and eax, 0xfffffffc
call fcn.7f2fec90
mov edi, esp
jmp 0x7f2e490f
xor edi, edi
cmp esi, ebx
jbe 0x7f2e491d
cmp edi, ebx
jne 0x7f2e491d
jmp 0x7f2e48ca
xor esi, esi
xor edi, edi
push esi
push edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp - 8]
push dword [ebp + 8]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
cmp eax, ebx
mov dword [ebp + 0x1c], eax
je 0x7f2e4989
cmp dword [ebp + 8], ebx
mov esi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
je 0x7f2e4967
cmp dword [ebp + 0xc], ebx
je 0x7f2e4967
cmp dword [ebp + 0x10], ebx
je 0x7f2e4967
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 0xffffffffffffffff
push dword [ebp + 8]
push ebx
push dword [0x7f30bac8]
call esi
cmp edi, ebx
je 0x7f2e49a7
cmp dword [ebp + 0x20], ebx
je 0x7f2e49a7
cmp dword [ebp + 0x24], ebx
je 0x7f2e49a7
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push 0xffffffffffffffff
push edi
push ebx
push dword [0x7f30bac8]
call esi
jmp 0x7f2e49a7
mov eax, dword [ebp + 0xc]
cmp eax, ebx
je 0x7f2e4998
cmp dword [ebp + 0x10], ebx
jbe 0x7f2e4998
mov word [eax], bx
mov eax, dword [ebp + 0x20]
cmp eax, ebx
je 0x7f2e49a7
cmp dword [ebp + 0x24], ebx
jbe 0x7f2e49a7
mov word [eax], bx
mov eax, dword [ebp + 0x1c]
lea esp, [ebp - 0x14]
pop edi
pop esi
pop ebx
leave
ret 0x20