Function at 0x100536f5
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
push ebx
push esi
xor esi, esi
mov dword [ebp - 0x1c], 0xfffffffd
push edi
inc esi
mov dword [ebp - 0x1c], 0xfffffff7
mov edi, ecx
mov dword [ebp - 0x1c], 0xa18885c6
xor ebx, ebx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x1c], ebx
push esi
call fcn.100191fb
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0xc], ebx
jmp 0x10053758
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x28]
mov dword [eax + ecx*4], 0xfffffffb
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x10053748
dec dword [ebp - 0x10]
lea ecx, [ebp - 0x28]
call fcn.1001927d
push 0x6dfd
push 0x73a8
push edi
push 0xa47
push esi
push 0x38dc
call fcn.1004de35
add esp, 0x18
push 3
pop ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0xc], ebx
jmp 0x1005379b
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x34], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x10053791
mov dword [ebp - 0xc], ebx
jmp 0x100537c0
mov dword [ebp - 0x1c], 0xeac45307
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x34], ecx
mov dword [ebp - 0x1c], ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jle 0x100537a5
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x100537d4
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
push edi
call fcn.10034bba
mov dword [ebp - 8], 0xdce9
xor edx, edx
mov dword [ebp - 0x10], esi
mov edi, eax
pop ecx
mov ecx, dword [ebp - 8]
mov ecx, dword [ebp - 8]
mov ecx, dword [ebp - 8]
test ecx, ecx
setns dl
cmp edx, dword [ebp - 8]
jle 0x100537ff
mov eax, dword [ebp - 8]
cmp dword [ebp - 8], esi
je 0x10053809
cmp dword [ebp - 8], ebx
jne 0x1005380b
mov esi, ebx
mov dword [ebp - 0x10], esi
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], 0x25
je 0x100538d2
push 7
pop esi
mov dword [ebp - 0xc], 0x449e
xor edx, edx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], 0xfffffff6
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x18]
je 0x10053847
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
sub eax, esi
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xd860
mov eax, dword [ebp - 0xc]
setne cl
xor edx, edx
cmp ecx, eax
setge dl
xor ecx, ecx
sub edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
test eax, eax
setle cl
cmp ecx, 0x92fb38a8
ja 0x100538a2
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setne cl
sub eax, ecx
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
inc dword [ebp - 8]
cmp dword [ebp - 8], 0x25
jne 0x1005381e
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret