Function at 0x401da0
Capabilities:
Get disk information

Disassembly:
push 0xffffffffffffffff
push 0x4056a8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x104
mov eax, dword [esp + 0x114]
push ebx
push esi
push edi
mov ebx, ecx
push eax
push 0x66
mov dword [esp + 0x114], ebx
call sub.MFC42.DLL_CDialog::CDialog
mov dword [ebx], 0x406484
xor esi, esi
movzx cx, byte [0x408042]
movzx ax, byte [0x408024]
movzx dx, byte [0x408023]
sub ecx, 0x16
sub eax, 0x79
mov word [esp + 0xc], cx
sub edx, 0x43
movzx cx, byte [0x40805f]
sub ecx, 0x94
mov word [esp + 0x10], ax
mov word [esp + 0x12], cx
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0xe], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
mov ecx, 0x410244
push edx
mov dword [esp + 0x11c], esi
stosw word es:[edi], ax
call fcn.0040518e
movzx ax, byte [0x408028]
movzx cx, byte [0x408052]
movzx dx, byte [0x408032]
sub eax, 0x50
sub ecx, 0x31
mov word [esp + 0xc], ax
mov word [esp + 0xe], cx
movzx ax, byte [0x408027]
add eax, 0x55
sub edx, 0x57
mov word [esp + 0x12], ax
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0x10], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc]
push ecx
mov ecx, 0x410240
stosw word es:[edi], ax
call fcn.0040518e
movzx ax, byte [0x408029]
movzx cx, byte [0x408059]
movzx dx, byte [0x408038]
add eax, 0xd
sub ecx, 0x7e
sub edx, 0x3b
mov word [esp + 0xe], ax
mov word [esp + 0x10], cx
mov ecx, 0x3e
xor eax, eax
lea edi, [esp + 0x14]
mov word [esp + 0xc], dx
mov word [esp + 0x12], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
mov ecx, 0x410248
push edx
call fcn.0040518e
movzx ax, byte [0x408031]
movzx cx, byte [0x40805a]
sub eax, 0x1e
add ecx, 0x6e
mov word [esp + 0xc], ax
mov word [esp + 0xe], cx
movzx ax, byte [0x40805e]
movzx dx, byte [0x408040]
add eax, 0x72
sub edx, 0x8f
mov word [esp + 0x12], ax
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0x10], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc]
push ecx
mov ecx, 0x410234
stosw word es:[edi], ax
call fcn.0040518e
movzx dx, byte [0x408040]
movzx ax, byte [0x408057]
movzx cx, byte [0x408049]
sub edx, 0xc2
add eax, 0xc
mov word [esp + 0xc], dx
add ecx, 0x52
movzx dx, byte [0x408042]
mov word [esp + 0xe], ax
mov word [esp + 0x10], cx
add edx, 0x2e
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0x12], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0xc]
mov ecx, 0x41023c
push eax
call fcn.0040518e
movzx cx, byte [0x40805d]
movzx ax, byte [0x40803b]
movzx dx, byte [0x408023]
sub ecx, 0x78
sub eax, 0x13
mov word [esp + 0xc], cx
sub edx, 0x40
movzx cx, byte [0x408029]
add ecx, 0x43
mov word [esp + 0x10], ax
mov word [esp + 0x12], cx
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0xe], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
mov ecx, 0x410238
push edx
stosw word es:[edi], ax
call fcn.0040518e
movzx ax, byte [0x40802f]
movzx cx, byte [0x40805b]
movzx dx, byte [0x40804f]
add eax, 0x16
add ecx, 0x55
mov word [esp + 0xc], ax
mov word [esp + 0xe], cx
movzx ax, byte [0x40803c]
add eax, 0x37
sub edx, 0x15
mov word [esp + 0x12], ax
mov ecx, 0x3d
xor eax, eax
lea edi, [esp + 0x16]
mov word [esp + 0x10], dx
mov word [esp + 0x14], si
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc]
push ecx
mov ecx, 0x410230
stosw word es:[edi], ax
call fcn.0040518e
movzx ax, byte [0x40804b]
mov ecx, 0x3e
lea edi, [esp + 0x14]
lea edx, [eax - 0x61]
add eax, 0xffffffa3
mov word [esp + 0xe], ax
mov word [esp + 0xc], dx
movzx ax, byte [0x40802f]
add eax, 0x12
mov word [esp + 0x12], si
mov word [esp + 0x10], ax
xor eax, eax
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc]
push ecx
mov ecx, 0x41022c
call fcn.0040518e
movzx dx, byte [0x40804b]
movzx ax, byte [0x40804d]
sub edx, 0x19
inc eax
mov word [esp + 0xe], ax
mov ecx, 0x3e
xor eax, eax
lea edi, [esp + 0x12]
mov word [esp + 0xc], dx
mov word [esp + 0x10], si
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc]
push ecx
mov ecx, 0x410228
stosw word es:[edi], ax
call fcn.0040518e
movzx ax, byte [0x40802b]
movzx cx, byte [0x408037]
movzx dx, byte [0x408033]
sub eax, 0x33
sub ecx, 0x64
add edx, 0x35
mov word [esp + 0xe], ax
mov word [esp + 0x10], cx
mov ecx, 0x3e
xor eax, eax
lea edi, [esp + 0x14]
mov word [esp + 0xc], dx
mov word [esp + 0x12], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
mov ecx, 0x410220
push edx
call fcn.0040518e
movzx ax, byte [0x408028]
movzx cx, byte [0x40804b]
sub eax, 7
sub ecx, 0x29
mov word [esp + 0xc], ax
mov word [esp + 0xe], cx
mov ecx, 0x3e
xor eax, eax
lea edi, [esp + 0x12]
mov word [esp + 0x10], si
rep stosd dword es:[edi], eax
lea edx, [esp + 0xc]
mov ecx, 0x410224
push edx
stosw word es:[edi], ax
call fcn.0040518e
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
call sub.MFC42.DLL_AfxGetModuleState
push 0x80
push 0xe
push 0x80
call sub.MFC42.DLL_AfxFindResourceHandle
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [ebx + 0x454], eax
pop edi
mov eax, ebx
pop esi
pop ebx
mov ecx, dword [esp + 0x104]
mov dword fs:[0], ecx
add esp, 0x110
ret 4