Function at 0x41b69a
Capabilities:
Get disk information
Get disk size

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x15e
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x41b6a2
call fcn.00462120
push dword [esp + 0x58c]
call fcn.004264a0
mov edx, dword [esp + 0x588]
lea ecx, [esp]
call fcn.00426060
mov edx, 0x494038
lea ecx, [esp + 4]
call fcn.00426068
mov edx, 0x494038
lea ecx, [esp + 8]
call fcn.00426068
mov edx, 0x494038
lea ecx, [esp + 0xc]
call fcn.00426068
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x28
call fcn.004603b0
lea eax, [esp + 0x18]
push 0x28
push eax
call fcn.00462090
mov edx, 0x494038
lea ecx, [esp + 0x64]
call fcn.00426068
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0xa0], 0
mov byte [esp + 0xa4], 0
mov edx, 0x494038
lea ecx, [esp + 0x56c]
call fcn.00426068
mov edx, 0x494038
lea ecx, [esp + 0x570]
call fcn.00426068
push dword [esp]
mov edx, 0x494038
pop ecx
call fcn.004264b0
je 0x41b7a9
push edx
call fcn.00461fa0
pop edx
push eax
push str.HarddiskVolume
call fcn.004202e4
lea eax, [esp + 8]
push eax
call fcn.00462020
jmp 0x41b7c4
mov edx, dword [esp]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
lea eax, [esp + 8]
push eax
call fcn.00462020
mov eax, 0x498b52
push eax
push dword [esp + 8]
call fcn.0045f400
mov ebx, eax
inc ebx
mov dword [esp + 0x574], ebx
mov dword [esp + 0xa0], 1
jmp 0x41b7ea
mov eax, dword [esp + 0x574]
cmp eax, dword [esp + 0xa0]
jl 0x41c0d0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov eax, 0x498b52
push eax
push dword [esp + 0xac]
push dword [esp + 0x14]
call fcn.0045f880
lea eax, [esp + 0xc]
push eax
call fcn.00462020
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0xc]
call fcn.00416ee4
lea eax, [esp + 0x10]
push eax
call fcn.00462020
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0x10]
call fcn.00416ee4
call fcn.00426482
add dword [esp], edx
call fcn.0041ae24
lea eax, [esp + 0x68]
push eax
call fcn.00462020
lea eax, [esp + 0xa8]
push eax
push dword [esp + 0x10]
call fcn.00419384
lea eax, [esp + 0x4dc]
push eax
push dword [esp + 0x10]
call fcn.004166f6
lea eax, [esp + 0xb4]
push eax
push dword [esp + 0x10]
call fcn.0041f98d
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x104
call fcn.004603b0
lea eax, [esp + 0x6c]
push eax
call fcn.00462020
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x104
call fcn.004603b0
lea eax, [esp + 0x70]
push eax
call fcn.00462020
push edx
call fcn.00461fa0
pop edx
push eax
push 0x104
mov eax, dword [esp + 0x74]
push eax
push 0
push 0
push 0
push 0x104
mov eax, dword [esp + 0x84]
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.._
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x2c]
push edx
call fcn.00461fd0
mov edx, 0x4948ec
push edx
call fcn.00461fd0
call fcn.00426482
add dword [esp], edx
call sub.KERNEL32.dll_GetVolumeInformationW
call fcn.004264a0
mov byte [esp + 0xa4], al
push edx
call fcn.00461fa0
pop edx
push eax
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x7c]
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.._
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x1c]
push edx
call fcn.00461fd0
mov edx, 0x4948ec
push edx
call fcn.00461fd0
call fcn.00426482
add dword [esp], edx
call sub.KERNEL32.dll_GetDiskFreeSpaceExW
call fcn.004264a0
mov byte [esp + 0xa4], al
push edx
call fcn.00461fa0
pop edx
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.._
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x20]
push edx
call fcn.00461fd0
mov edx, 0x4948ec
push edx
call fcn.00461fd0
call fcn.00426482
add dword [esp], edx
call sub.KERNEL32.dll_GetDiskFreeSpaceW
call fcn.004264a0
mov byte [esp + 0xa4], al
push dword [esp + 0x7c]
push dword [esp + 0x7c]
lea eax, [esp + 0x88]
mov edx, dword [eax]
sub dword [esp], edx
mov edx, dword [eax + 4]
sbb dword [esp + 4], edx
pop dword [esp + 0x8c]
pop dword [esp + 0x8c]
push dword [esp + 0x8c]
push dword [esp + 0x8c]
pop ebx
pop edi
cmp edi, 0
jl 0x41ba73
jg 0x41ba6f
cmp ebx, 0
jb 0x41ba73
xor eax, eax
jmp 0x41ba78
mov eax, 1
or eax, eax
je 0x41ba92
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
lea ebp, [esp + 0x4dc]
push dword [ebp]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x41bb98
mov edx, 0x497982
lea ecx, [esp + 0x574]
call fcn.00426068
lea ebp, [esp + 0x4e0]
cmp byte [ebp + 0x21], 0
je 0x41baf7
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.ACT_n
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x578]
push edx
call fcn.00461fd0
lea eax, [esp + 0x578]
push eax
call fcn.00462020
jmp 0x41bb93
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 1
lea ebp, [esp + 0x4ec]
movsx eax, byte [ebp + 0x20]
cdq
push edx
push eax
call fcn.004606f0
call fcn.00462100
mov edx, 0x495fba
call fcn.004264f0
mov ecx, eax
call fcn.004264b0
je 0x41bb66
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.ESP_n
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x578]
push edx
call fcn.00461fd0
lea eax, [esp + 0x578]
push eax
call fcn.00462020
jmp 0x41bb93
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, 0x4987da
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x578]
push edx
call fcn.00461fd0
lea eax, [esp + 0x578]
push eax
call fcn.00462020
jmp 0x41bc79
mov ebx, 1
cmp ebx, dword [esp]
jne 0x41bc79
mov edx, 0x4955b0
lea ecx, [esp + 0x574]
call fcn.00426068
push 0x28
lea eax, [esp + 0x1c]
push eax
lea ebp, [esp + 0x4e8]
lea eax, [ebp + 0x20]
push eax
call sub.ole32.dll_StringFromGUID2
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
lea edx, [esp + 0x20]
push edx
call fcn.00461fa0
pop edx
push eax
push 0x28
push edx
call fcn.004621c0
call fcn.00426482
add dword [esp], edx
call fcn.0045f9b0
call fcn.00462100
mov edx, 0x49610c
call fcn.004264f0
mov ecx, eax
call fcn.004264b0
je 0x41bc4c
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, str.ESP_n
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x578]
push edx
call fcn.00461fd0
lea eax, [esp + 0x578]
push eax
call fcn.00462020
jmp 0x41bc79
push edx
call fcn.00461fa0
pop edx
push eax
mov edx, 0x4987da
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x578]
push edx
call fcn.00461fd0
lea eax, [esp + 0x578]
push eax
call fcn.00462020
pop eax
lea ebp, [esp + 0xb4]
cmp dword [ebp + 0xc], 0
je 0x41bce1
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x18
push 0xffffffff
lea eax, [esp + 0xcc]
mov ebx, eax
lea ebp, [esp + 0xcc]
add ebx, dword [ebp + 0xc]
push ebx
call fcn.00461290
call fcn.00426482
add dword [esp], edx
call fcn.004604e0
lea eax, [esp + 0x14]
push eax
call fcn.00462020
lea ebp, [esp + 0xb4]
cmp dword [ebp + 0x10], 0
je 0x41bd97
push dword [esp + 0x10]
mov edx, 0x494038
pop ecx
call fcn.004264b0
jne 0x41bd2a
mov edx, dword [esp + 0x10]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
mov edx, 0x49438e
push edx
call fcn.00461fd0
lea eax, [esp + 0x14]
push eax
call fcn.00462020
mov edx, dword [esp + 0x10]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x18
push 0xffffffff
lea eax, [esp + 0xd0]
mov ebx, eax
lea ebp, [esp + 0xd0]
add ebx, dword [ebp + 0x10]
push ebx
call fcn.00461290
call fcn.00426482
add dword [esp], edx
call fcn.004604e0
pop eax
lea eax, [esp + 0x14]
push eax
call fcn.00462020
lea ebp, [esp + 0xb4]
cmp dword [ebp + 0x14], 0
je 0x41bdff
mov edx, dword [esp + 0x10]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
mov edx, 0x49438e
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push 0x18
push 0xffffffff
lea eax, [esp + 0xc8]
mov ebx, eax
lea ebp, [esp + 0xc8]
add ebx, dword [ebp + 0x14]
push ebx
call fcn.00461290
pop eax
lea eax, [esp + 0x14]
push eax
call fcn.00462020
mov edx, dword [esp + 0x56c]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
mov edx, dword [esp + 0xc]
push edx
call fcn.00461fd0
mov edx, 0x49406a
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x68]
push edx
call fcn.00461fd0
mov edx, 0x49406a
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
lea ebp, [esp + 0xb4]
mov eax, dword [ebp + 4]
cdq
push edx
push eax
call fcn.0045f640
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.0045f640
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
lea eax, [esp + 0x570]
push eax
call fcn.00462020
mov edx, dword [esp + 0x56c]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0x74]
call fcn.004604e0
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0x84]
push dword [esp + 0x84]
call fcn.00415c2d
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0x94]
push dword [esp + 0x94]
call fcn.00415c2d
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
lea eax, [esp + 0x570]
push eax
call fcn.00462020
mov edx, dword [esp + 0x56c]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
push dword [esp + 0x78]
call fcn.004604e0
pop eax
mov edx, 0x49406a
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x574]
push edx
call fcn.00461fd0
mov edx, 0x49406a
push edx
call fcn.00461fd0
mov edx, dword [esp + 0x14]
push edx
call fcn.00461fd0
mov edx, 0x49406a
push edx
call fcn.00461fd0
lea eax, [esp + 0x570]
push eax
call fcn.00462020
mov edx, dword [esp + 0x56c]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fa0
pop edx
push eax
mov eax, dword [esp + 0x9c]
cdq
push edx
push eax
mov eax, dword [esp + 0xa8]
cdq
push edx
push eax
push dword [esp + 0xc]
push dword [esp + 0xc]
call fcn.004261e0
mov dword [esp], eax
mov dword [esp + 4], edx
pop eax
pop edx
push edx
push eax
call fcn.0045f640
pop eax
mov edx, 0x494c28
push edx
call fcn.00461fd0
lea eax, [esp + 0x570]
push eax
call fcn.00462020
push 0
push 0xc
lea eax, [esp + 0xb0]
push eax
call fcn.00461230
push 0
push 0x90
lea eax, [esp + 0x4e4]
push eax
call fcn.00461230
push 0
push 0x428
lea eax, [esp + 0xbc]
push eax
call fcn.00461230
mov edx, 0x494038
lea ecx, [esp + 0x10]
call fcn.00426068
mov edx, 0x494038
lea ecx, [esp + 0x68]
call fcn.00426068
mov edx, 0x494038
lea ecx, [esp + 0x6c]
call fcn.00426068
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
inc dword [esp + 0xa0]
jno 0x41b7ea
mov edx, dword [esp + 0x56c]
push edx
call fcn.00461fa0
pop edx
push eax
push edx
call fcn.00461fd0
pop eax
push eax
call fcn.00426470
pop edx
add eax, edx
jmp 0x41c0fb
push dword [esp + 4]
call fcn.00462190
push dword [esp + 0x6c]
call fcn.00462190
push dword [esp + 0x64]
call fcn.00462190
push dword [esp]
call fcn.00462190
push dword [esp + 0x56c]
call fcn.00462190
push dword [esp + 0x68]
call fcn.00462190
push dword [esp + 8]
call fcn.00462190
push dword [esp + 0x10]
call fcn.00462190
push dword [esp + 0x570]
call fcn.00462190
push dword [esp + 0xc]
call fcn.00462190
add esp, 0x578
pop edi
pop ebx
pop ebp
ret 4