Function at 0x425e60
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc8
push esi
push edi
movzx eax, byte [ebp + 0x24]
test eax, eax
je 0x425f52
lea eax, [ebp + 0x2c]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0x34], eax
lea eax, [ebp + 0x3c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x8c]
movzx eax, byte [eax]
test eax, eax
je 0x425ef6
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
movzx eax, byte [eax]
test eax, eax
je 0x425eba
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
jmp 0x425ef4
mov byte [ebp - 6], 0
movzx eax, byte [ebp - 6]
test eax, eax
je 0x425ef4
push 1
push 1
push 0x46ae
push 0x1d44
push 0x101a
push 0x4fe7
push 0x14b5
push 1
push 0x64cb
push 1
call fcn.00413975
add esp, 0x28
jmp 0x425f4d
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x3c], eax
push 0x313b
push 0x4e14
push dword [ebp - 0x3c]
push dword [ebp - 0x7c]
push 0x1760
push 0x475d
push 0x792d
push 0x4101
push 1
push 0x208f
push 0x613d
push 1
push 0x78f4
push 0
push 0
push 0x260f
call fcn.0041502f
add esp, 0x40
jmp 0x426243
lea eax, [ebp + 0x20]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x6c], eax
lea eax, [ebp + 8]
mov dword [ebp - 0x28], eax
lea eax, [ebp + 0x1c]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
test eax, eax
je 0x426005
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax]
test eax, eax
je 0x425fec
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
movzx eax, byte [eax]
test eax, eax
je 0x425fea
push 0x61c1
push 0
push 0xa96
call fcn.004198c9
add esp, 0xc
jmp 0x426000
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
jmp 0x426243
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
movzx eax, byte [eax]
test eax, eax
je 0x426193
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov dword [eax], 1
jmp 0x42608f
mov eax, dword [ebp - 4]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov eax, dword [ebp - 4]
cmp dword [eax], 0
jl 0x42618e
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0xb8], 0xfffffff8
push 2
lea ecx, [ebp - 0xc8]
call fcn.0043486b
mov dword [ebp - 0x10], 0
jmp 0x4260cc
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x4260e8
push dword [ebp - 0x10]
lea ecx, [ebp - 0xc8]
call fcn.00434959
mov dword [eax], 0x3e24
jmp 0x4260c5
mov eax, dword [ebp - 4]
push dword [eax]
mov ecx, dword [ebp - 0xc]
call fcn.00434959
cmp dword [eax], 0
je 0x42611a
mov eax, dword [ebp - 4]
push dword [eax]
mov ecx, dword [ebp - 0xc]
call fcn.00434959
imul eax, dword [eax], 0x2522
neg eax
je 0x42611a
mov dword [ebp - 0x18], 1
jmp 0x42611e
and dword [ebp - 0x18], 0
imul esi, dword [ebp - 0x18], 0x223d
push 0
mov ecx, dword [ebp - 0x20]
call fcn.00434959
mov dword [eax], esi
mov eax, dword [ebp - 4]
push dword [eax]
mov ecx, dword [ebp - 0xc]
call fcn.00434959
mov ecx, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
mov esi, dword [eax]
sub esi, 0x455d
mov eax, dword [ebp - 0x1c]
mov edi, dword [eax]
mov eax, dword [ebp - 4]
push dword [eax]
mov ecx, dword [ebp - 0xc]
call fcn.00434959
imul edi, dword [eax]
sub edi, esi
push 0
mov ecx, dword [ebp - 0x20]
call fcn.00434959
mov dword [eax], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
lea ecx, [ebp - 0xc8]
call fcn.0043493d
jmp 0x426084
jmp 0x426243
mov dword [ebp - 0x90], 0
push 1
lea ecx, [ebp - 0xb0]
call fcn.0043486b
mov dword [ebp - 0x88], 0
push 0
lea eax, [ebp - 0xb0]
push eax
push 0
push 0
push 1
push 0x6907
push 0x6fe3
lea eax, [ebp - 0xbc]
push eax
push 1
push 0x7a0a
call fcn.00428187
add esp, 0x28
push 1
lea eax, [ebp - 0x88]
push eax
push 0x33c7
lea eax, [ebp - 0x90]
push eax
push 0x748c
push 1
push 0
lea eax, [ebp - 0xb0]
push eax
push 0x4d3e
push 0x1f9
call fcn.004087ad
add esp, 0x28
mov byte [ebp - 5], 0
push 0
push 0x1567
lea eax, [ebp - 5]
push eax
push 0
push 0x60d0
call fcn.00410b50
add esp, 0x14
lea ecx, [ebp - 0xb0]
call fcn.0043493d
pop edi
pop esi
mov esp, ebp
pop ebp
ret