Function at 0x464c92
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x838
xor eax, eax
push edi
mov word [ebp - 0x428], ax
mov byte [ebp - 2], al
mov byte [ebp - 4], al
mov byte [ebp - 3], al
mov eax, dword [ebp + 0x14]
xor edi, edi
mov byte [ebp - 1], 1
lea ecx, [ebp - 0x220]
cmp eax, edi
jne 0x464cc8
call fcn.00460a16
jmp 0x464cce
push ecx
call fcn.00485161
cmp word [ebp - 0x220], di
jne 0x464cde
xor al, al
pop edi
leave
ret 0x10
push ebx
push esi
lea eax, [ebp - 0x220]
push eax
push str.INSTALLDEBUG:_FindInstallablePath_Chose_n_tpath:__s__n
call fcn.0042ebe6
add esp, 8
mov ebx, 0x104
push ebx
lea eax, [ebp - 0x428]
push eax
push dword [0x548870]
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
lea eax, [ebp - 0x220]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, di
jne 0x464d16
sub eax, edx
sar eax, 1
mov esi, eax
push esi
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x220]
push eax
call sub.MSVCRT.dll__wcsnicmp
add esp, 0xc
test eax, eax
jne 0x464d5d
lea eax, [ebp + esi*2 - 0x428]
push 0x500e74
push eax
call sub.MSVCRT.dll__wcsicmp
pop ecx
pop ecx
test eax, eax
jne 0x464d5d
mov byte [ebp - 2], 1
push dword [0x54bb98]
lea eax, [ebp - 0x428]
push eax
call sub.MSVCRT.dll__wcsicmp
pop ecx
pop ecx
test eax, eax
jne 0x464d79
mov byte [ebp - 4], 1
push 6
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x428]
mov dword [ebp - 0xc], edi
call fcn.0046bd27
push edi
push edi
push edi
push edi
lea eax, [ebp - 0xc]
push eax
push ebx
lea eax, [ebp - 0x838]
push eax
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.DLL_GetVolumeInformationW]
mov eax, dword [0x54b9ac]
cmp dword [ebp - 0xc], eax
je 0x464db8
cmp eax, edi
je 0x464db8
mov byte [ebp - 3], 1
call fcn.0045e5c2
lea ecx, [ebp + 0x14]
mov bl, al
call fcn.0044502c
lea edx, [ebp - 8]
lea ecx, [ebp + 0x14]
mov dword [ebp - 8], edi
call fcn.0045c1d3
mov esi, 0x681a
cmp dword [ebp - 8], esi
je 0x464df3
mov eax, dword [0x548aa0]
mov dword [0x54b9b4], eax
mov eax, dword [0x548aa4]
mov dword [0x54b9b8], eax
cmp dword [ebp + 0x10], 0x10000
jne 0x464e36
push 1
lea eax, [ebp - 1]
push eax
push dword [ebp + 0xc]
xor dl, dl
lea ecx, [ebp - 0x220]
call fcn.00463c4e
test al, al
je 0x464e23
mov eax, dword [0x5484d4]
cmp eax, edi
jne 0x464f09
xor bl, bl
lea ecx, [ebp + 0x14]
call fcn.004461e4
pop esi
mov al, bl
pop ebx
jmp 0x464cd9
cmp dword [ebp + 0x10], edi
je 0x464e55
lea eax, [ebp - 1]
push eax
push dword [ebp + 0xc]
push dword [ebp + 0x10]
lea eax, [ebp - 0x220]
call fcn.00464afd
jmp 0x464f2f
call fcn.0045c174
test al, al
jne 0x464ef0
call fcn.004b4983
test al, al
je 0x464e79
lea eax, [ebp - 1]
push eax
push dword [ebp + 0xc]
push 0x10f
jmp 0x464e45
cmp dword [0x54b01c], esi
jne 0x464e8e
test bl, bl
jne 0x464e8e
cmp byte [ebp - 3], bl
je 0x464f2f
movzx eax, byte [ebp - 3]
push eax
movzx eax, byte [ebp - 2]
push eax
push str.INSTALLDEBUG:_running_from_installed_path___d_running_from_different_drive___d_n
call fcn.0042ebe6
add esp, 0xc
test bl, bl
jne 0x464ed0
cmp byte [ebp - 2], bl
jne 0x464eb3
cmp byte [ebp - 4], bl
je 0x464ed0
cmp byte [ebp - 3], 0
jne 0x464ed0
lea eax, [ebp + 0xf]
push eax
push dword [0x5484d4]
lea edx, [ebp - 0x220]
push 0x100
jmp 0x464f27
push edi
lea eax, [ebp - 1]
push eax
push dword [ebp + 0xc]
xor dl, dl
lea ecx, [ebp - 0x220]
call fcn.00463c4e
test al, al
jne 0x464f2f
mov bl, 1
jmp 0x464e25
cmp dword [ebp - 8], edi
je 0x464f00
cmp dword [ebp - 8], esi
je 0x464f00
cmp byte [ebp - 2], 0
jne 0x464eb9
mov eax, dword [0x5484d4]
cmp eax, edi
je 0x464f2f
lea ecx, [ebp + 0xf]
push ecx
push eax
movzx eax, byte [0x548518]
cmp eax, 6
sbb eax, eax
and eax, 0xfffff000
add eax, 0x1000
push eax
xor edx, edx
lea ecx, [ebp + 0x14]
call fcn.00463eda
cmp byte [ebp - 1], 0
jne 0x464f58
mov eax, dword [0x54aee4]
cmp eax, edi
je 0x464f51
push eax
call dword [sym.imp.KERNEL32.DLL_ReleaseMutex]
push dword [0x54aee4]
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
call fcn.0045db75
jmp 0x464f80
push 0x104
lea eax, [ebp - 0x630]
push eax
push dword [0x548870]
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
lea edx, [ebp - 0x630]
mov ecx, 0x54bb98
call fcn.0048d7ba
call fcn.00489b8c
cmp byte [ebp - 1], 0
sete bl
jmp 0x464e25