Function at 0x415dbc
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffea4
mov eax, 0x5375dc
push ebx
push esi
push edi
mov ebx, dword [ebp + 0xc]
call fcn.00524684
mov word [ebp - 0x38], 8
xor edx, edx
mov dword [ebp - 4], edx
inc dword [ebp - 0x2c]
mov word [ebp - 0x38], 0x14
push 1
call sub.KERNEL32.DLL_SetErrorMode
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x536f01]
mov dword [ebp - 0x58], ecx
mov byte [ebp - 0x58], bl
mov word [ebp - 0x38], 0x20
mov byte [ebp - 0x15c], 0
push 0
push 0
lea eax, [ebp - 0x54]
push eax
lea edx, [ebp - 0x50]
push edx
push 0
push 0x104
lea ecx, [ebp - 0x15c]
push ecx
lea eax, [ebp - 0x58]
push eax
call sub.KERNEL32.DLL_GetVolumeInformationA
test eax, eax
je 0x415e74
mov word [ebp - 0x38], 0x2c
lea edx, [ebp - 0x15c]
push edx
call sub.KERNEL32.DLL_lstrlenA
mov ecx, eax
lea edx, [ebp - 0x15c]
lea eax, [ebp - 8]
call fcn.0052f094
mov edx, eax
inc dword [ebp - 0x2c]
lea eax, [ebp - 4]
call fcn.0052f364
dec dword [ebp - 0x2c]
lea eax, [ebp - 8]
mov edx, 2
call fcn.0052f334
jmp 0x415ea5
mov word [ebp - 0x38], 0x38
mov edx, 0x536f5c
lea eax, [ebp - 0xc]
call fcn.0052f020
inc dword [ebp - 0x2c]
lea edx, [ebp - 0xc]
lea eax, [ebp - 4]
call fcn.0052f364
dec dword [ebp - 0x2c]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.0052f334
movsx ecx, bl
cmp ecx, 0x61
jge 0x415ee3
mov word [ebp - 0x38], 0x44
xor eax, eax
mov dword [ebp - 0x10], eax
lea edx, [ebp - 0x10]
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004a8384
lea edx, [ebp - 0x10]
lea eax, [ebp - 4]
call fcn.0052f364
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.0052f334
jmp 0x415f17
mov word [ebp - 0x38], 0x50
xor ecx, ecx
mov dword [ebp - 0x14], ecx
lea edx, [ebp - 0x14]
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004a82f8
lea edx, [ebp - 0x14]
lea eax, [ebp - 4]
call fcn.0052f364
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0052f334
cmp dword [ebp - 4], 0
je 0x415f25
mov ecx, dword [ebp - 4]
mov eax, dword [ecx - 4]
jmp 0x415f27
xor eax, eax
test eax, eax
je 0x415fca
mov word [ebp - 0x38], 0x5c
mov edx, str._______
lea eax, [ebp - 0x18]
call fcn.0052f020
inc dword [ebp - 0x2c]
xor edx, edx
mov dword [ebp - 0x1c], edx
lea ecx, [ebp - 0x1c]
inc dword [ebp - 0x2c]
lea edx, [ebp - 4]
call fcn.0052f38c
lea eax, [ebp - 0x1c]
push eax
mov edx, 0x536f5f
lea eax, [ebp - 0x20]
call fcn.0052f020
mov edx, eax
inc dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0x24]
inc dword [ebp - 0x2c]
pop eax
call fcn.0052f38c
lea edx, [ebp - 0x24]
lea eax, [ebp - 4]
call fcn.0052f364
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.0052f334
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.0052f334
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.0052f334
dec dword [ebp - 0x2c]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0052f334
mov word [ebp - 0x38], 0x14
mov ecx, dword [ebp - 0x4c]
push ecx
call sub.KERNEL32.DLL_SetErrorMode
cmp word [ebp - 0x36], 0
je 0x415fe1
ret
mov word [ebp - 0x38], 0x68
lea edx, [ebp - 4]
mov eax, dword [ebp + 8]
call fcn.0052f364
mov eax, dword [ebp + 8]
mov edx, 2
mov word [ebp - 0x38], 0x74
push eax
lea eax, [ebp - 4]
dec dword [ebp - 0x2c]
call fcn.0052f334
pop eax
mov word [ebp - 0x38], 0x68
inc dword [ebp - 0x2c]
mov edx, dword [ebp - 0x48]
mov dword fs:[0], edx
mov esp, ebp
mov edi, dword [ebp - 0x168]
mov esi, dword [ebp - 0x164]
mov ebx, dword [ebp - 0x160]
pop ebp
ret