Function at 0x401000
Capabilities:
Get disk information

Disassembly:
push 0xa8
push 0
push 0x41096c
call sub.CRTDLL.dll_memset
add esp, 0xc
push 0
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [0x410970], eax
push 0
push 0x1000
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [0x41096c], eax
push 0x40f30c
pop dword [0x410974]
call fcn.0040d650
call fcn.0040d588
call fcn.0040cd4b
call fcn.0040c912
call fcn.0040ae16
call fcn.004079a7
call fcn.00407770
call fcn.0040754e
call fcn.00407130
call fcn.00406a30
push dword [0x410f54]
call fcn.0040ca80
sub esp, 4
inc dword [0x410f54]
lea ecx, [0x410988]
pop edx
call fcn.00406000
push dword [0x410f54]
push 1
push dword [0x410988]
call fcn.00406070
sub esp, 4
inc dword [0x410f54]
mov edx, 0x40f00c
pop ecx
mov dword [0x410f54], ecx
add ecx, dword [0x40f3c8]
call fcn.004122c0
jne 0x4010fb
mov edx, dword [0x410988]
push dword [0x410f54]
call fcn.0040d6a0
mov edx, 0x40f00c
call fcn.0040d6a0
lea ecx, [0x410988]
pop edx
call fcn.00406000
push 8
push str.Arial
push 0xffffffff
call fcn.0040ca32
push eax
call fcn.0040ca50
mov dword [0x4109c0], eax
mov dword [0x4109dc], 0x3e8
mov edx, str.PopSel.lst
lea ecx, [0x4109d4]
call fcn.00406010
push dword [0x410f54]
call fcn.0040721d
sub esp, 4
lea ecx, [0x4109d0]
pop edx
call fcn.00406000
push dword [0x4109d0]
mov edx, 0x40f00e
pop ecx
call fcn.004122c0
je 0x401166
jmp 0x40132a
push dword [0x4109d0]
call fcn.004060f0
mov ebx, eax
cmp ebx, 0x2f
jne 0x401308
push dword [0x410f54]
push dword [0x4109d0]
call fcn.00406110
sub esp, 4
lea ecx, [0x4109d0]
pop edx
call fcn.00406000
mov eax, dword [0x4109d0]
mov ebx, eax
inc ebx
push ebx
call fcn.00407790
mov dword [0x410984], eax
mov ebx, dword [0x410984]
cmp ebx, 0x50
jne 0x4011cb
mov ebx, dword [0x4109cc]
or ebx, 1
mov dword [0x4109cc], ebx
jmp 0x401210
mov ebx, dword [0x410984]
cmp ebx, 0x4e
jne 0x4011e7
mov ebx, dword [0x4109cc]
or ebx, 4
mov dword [0x4109cc], ebx
jmp 0x401210
mov ebx, dword [0x410984]
cmp ebx, 0x53
jne 0x4011fe
mov dword [0x4109cc], 2
jmp 0x401210
mov ebx, dword [0x410984]
cmp ebx, 0x54
jne 0x40120b
jmp 0x401210
jmp 0x401325
push dword [0x410f54]
push dword [0x4109d0]
call fcn.004061a0
mov ebx, eax
add ebx, 0xfffffffe
push ebx
push 3
push dword [0x4109d0]
call fcn.004061c0
sub esp, 4
lea ecx, [0x4109d0]
pop edx
call fcn.00406000
mov edx, dword [0x4109d0]
xor ecx, ecx
call fcn.004122c0
jne 0x401306
push dword [0x410f54]
push dword [0x410f54]
push 0x40f0a3
push 1
push dword [0x4109d0]
call fcn.00406710
sub esp, 4
inc dword [0x410f54]
mov edx, dword [0x40f3c8]
add dword [esp], edx
call fcn.00406250
pop dword [0x410f54]
mov dword [0x4109e4], eax
mov ebx, dword [0x410984]
cmp ebx, 0x54
jne 0x4012b5
push dword [0x4109e4]
pop dword [0x4109dc]
jmp 0x401306
push dword [0x4109e4]
lea ebp, [0x4109f4]
pop dword [ebp]
push dword [0x410f54]
push dword [0x410f54]
push 0x40f0a3
push 2
push dword [0x4109d0]
call fcn.00406710
sub esp, 4
inc dword [0x410f54]
mov edx, dword [0x40f3c8]
add dword [esp], edx
call fcn.00406250
pop dword [0x410f54]
push eax
pop dword [ebp + 4]
jmp 0x401325
mov edx, dword [0x4109d0]
push dword [0x410f54]
call fcn.0040d6a0
lea ecx, [0x4109d4]
pop edx
call fcn.00406000
jmp 0x401134
push dword [0x410f54]
call fcn.004072d0
sub esp, 4
lea ecx, [0x4109a0]
pop edx
call fcn.00406000
mov eax, dword [0x4109a0]
inc eax
call fcn.00412000
mov ebx, eax
cmp ebx, 0x3a
jne 0x401394
push dword [0x410f54]
push dword [0x410f54]
push 2
push dword [0x4109a0]
call fcn.004062c0
sub esp, 4
inc dword [0x410f54]
mov edx, dword [0x40f3c8]
add dword [esp], edx
call sub.KERNEL32.dll_GetDriveTypeA
pop dword [0x410f54]
mov dword [0x410990], eax
push 9
push str.Arial
push 0
call fcn.0040ca32
mov dword [0x410980], eax
push 9
push str.Marlett
push 1
call fcn.0040ca32
mov dword [0x4109b4], eax
push 0
push 0x4109fc
push 0
push 0x30
call sub.USER32.dll_SystemParametersInfoA
push 7
push 0x40f300
push 8
mov eax, 0x410a0c
call fcn.00412010
lea eax, [0x405029]
push eax
call fcn.0040ae70
mov ebx, dword [0x4109cc]
cmp ebx, 2
jne 0x401423
call fcn.00401fe1
mov dword [0x410978], 1
jmp 0x40182a
push 0x90000000
push str.PopSel__
push 0x3c
push 0x50
push 0
push 0
push 0
call fcn.0040b21e
mov dword [0x4109a4], eax
mov ebx, dword [0x4109a4]
and ebx, ebx
je 0x40146d
push dword [0x4109a4]
call fcn.00407a10
mov ebx, eax
and ebx, ebx
je 0x40146d
jmp 0x401474
mov eax, 1
jmp 0x401476
xor eax, eax
and eax, eax
je 0x40147f
jmp 0x40189c
push 0xff
push 0
call fcn.0040b270
push dword [0x410980]
push 0xffffffff
call fcn.00407a40
push 0x2000
push str.PopSel_Setup
push 0x38
push 0x4c
push 2
push 2
push 0
call fcn.00407ac0
push 1
push 0xd
push 0
call fcn.0040b2d0
push 2
push 0x1b
push 0
call fcn.0040b2d0
call fcn.00401fe1
mov ebx, eax
and ebx, ebx
jne 0x401508
mov dword [0x410978], 1
jmp 0x401800
mov ebx, dword [0x410990]
cmp ebx, 2
je 0x401520
mov ebx, dword [0x410990]
cmp ebx, 5
je 0x401520
jmp 0x401527
mov eax, 1
jmp 0x401529
xor eax, eax
and eax, eax
je 0x401532
call fcn.0040224b
call fcn.0040b410
and eax, eax
je 0x40153d
jmp 0x401532
push 0
push 0x64
push 0x93da
push dword [0x4109a4]
call sub.USER32.dll_SetTimer
call fcn.0040264c
call fcn.0040b57f
mov dword [0x41099c], eax
push 0x93da
push dword [0x4109a4]
call sub.USER32.dll_KillTimer
mov ebx, dword [0x41099c]
cmp ebx, 0x332d
jne 0x401623
call fcn.0040b590
push eax
call fcn.004027ff
mov dword [0x410978], eax
mov ebx, dword [0x410978]
cmp ebx, 0xffffffff
jne 0x40161e
push dword [0x410f54]
mov edx, str.Cannot_open__
call fcn.0040d6a0
mov ebp, dword [0x410a10]
mov edx, dword [ebp + 8]
call fcn.0040d6a0
mov edx, str.__rEnter_configuration_
call fcn.0040d6a0
lea ecx, [0x4109c4]
pop edx
call fcn.00406000
push 4
push str.Error
push dword [0x4109c4]
push dword [0x4109a4]
call sub.USER32.dll_MessageBoxA
mov ebx, eax
cmp ebx, 6
jne 0x401614
mov dword [0x410978], 1
mov eax, 0x410a0c
call fcn.00412050
mov dword [0x41098c], eax
jmp 0x40161e
mov dword [0x410978], 3
jmp 0x4017f3
mov ebx, dword [0x4109cc]
and ebx, 4
and ebx, ebx
jne 0x401640
cmp dword [0x4109dc], 0
je 0x401640
mov eax, 1
jmp 0x401642
xor eax, eax
and eax, eax
je 0x4017e9
mov ebx, dword [0x4109cc]
and ebx, 1
and ebx, ebx
jne 0x4016e1
call fcn.0040d5f0
mov ebx, eax
add ebx, 0xffffffd8
push ebx
lea ebp, [0x4109f4]
pop dword [ebp]
call fcn.0040d610
mov ebx, eax
add ebx, 0xffffffe2
push ebx
pop dword [ebp + 4]
lea ebp, [0x4109fc]
mov ebx, dword [ebp + 8]
add ebx, 0xffffffb0
mov dword [0x4109b8], ebx
lea ebp, [0x4109f4]
mov ebx, dword [ebp]
cmp ebx, dword [0x4109b8]
jle 0x4016af
push dword [0x4109b8]
lea ebp, [0x4109f4]
pop dword [ebp]
lea ebp, [0x4109fc]
mov ebx, dword [ebp + 0xc]
add ebx, 0xffffffc4
mov dword [0x4109bc], ebx
lea ebp, [0x4109f4]
mov ebx, dword [ebp + 4]
cmp ebx, dword [0x4109bc]
jle 0x4016e1
push dword [0x4109bc]
lea ebp, [0x4109f4]
pop dword [ebp + 4]
push 1
push 0
push 0
lea ebp, [0x4109f4]
push dword [ebp + 4]
push dword [ebp]
push 0xffffffff
push dword [0x4109a4]
call sub.USER32.dll_SetWindowPos
push 0x80000
push 0x64
push dword [0x4109a4]
call sub.USER32.dll_AnimateWindow
push 0
call fcn.00407c10
push 0
push dword [0x4109dc]
push 0x93da
push dword [0x4109a4]
call sub.USER32.dll_SetTimer
call fcn.0040b57f
push eax
mov ebx, 0x332c
cmp ebx, dword [esp]
jne 0x401762
mov dword [0x410978], 1
jmp 0x4017c9
mov ebx, 0x332d
cmp ebx, dword [esp]
jne 0x401790
call fcn.0040b590
mov ebx, eax
cmp ebx, 1
jne 0x401784
mov dword [0x410978], 1
jmp 0x40178e
mov dword [0x410978], 3
jmp 0x4017c9
mov ebx, 0x113
cmp ebx, dword [esp]
jne 0x4017b5
call fcn.0040b5b0
mov ebx, eax
cmp ebx, 0x93da
jne 0x4017b3
mov dword [0x410978], 3
jmp 0x4017c9
mov ebx, 0x205
cmp ebx, dword [esp]
jne 0x4017c9
mov dword [0x410978], 3
pop eax
cmp dword [0x410978], 0
je 0x401746
push 0x93da
push dword [0x4109a4]
call sub.USER32.dll_KillTimer
jmp 0x4017f3
mov dword [0x410978], 3
cmp dword [0x410978], 0
je 0x4014ee
mov ebx, dword [0x410978]
cmp ebx, 3
jne 0x401820
push 0x90000
push 0xc8
push dword [0x4109a4]
call sub.USER32.dll_AnimateWindow
push 0
call fcn.0040ac80
mov ebx, dword [0x410978]
cmp ebx, 1
jne 0x40189c
push dword [0x410f54]
mov edx, str.PopSel__
call fcn.0040d6a0
mov edx, dword [0x4109d4]
call fcn.0040d6a0
lea ecx, [0x4109d8]
pop edx
call fcn.00406000
push dword [0x4109d8]
push 0
call sub.USER32.dll_FindWindowA
mov dword [0x4109ac], eax
cmp dword [0x4109ac], 0
je 0x401897
push 9
push dword [0x4109ac]
call sub.USER32.dll_ShowWindow
push dword [0x4109ac]
call sub.USER32.dll_SetForegroundWindow
jmp 0x40189c
call fcn.00404921
push 0
call 0x4018b6
push dword [0x41096c]
call sub.KERNEL32.dll_HeapDestroy
call sub.KERNEL32.dll_ExitProcess
call fcn.00407784
call fcn.0040ad6b
call fcn.0040c8e4
call fcn.0040cd1d
call fcn.0040d59c
call fcn.0040d630
ret