Function at 0x417580
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov edi, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x78]
mov dword [esp], eax
call fcn.00443940
sub esp, 4
call fcn.004438e0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
test edi, edi
jne 0x417848
mov dword [esp + 4], str.DEVICE:L:DEVICE:130L:C:L:40DISK:C:DISK:40Part:C:Part:40Volume:L:Volume:200Size:R:Size:90Usage:R:Usage:120FS:C:F.Sys:65Boot:C:Boot:50PS:C:P.S:50Product:L:Product:250Cluster:R:Cluster:70
lea eax, [esp + 0x30]
mov dword [esp], eax
call fcn.00443ca0
sub esp, 8
mov dword [esp + 4], 0x4574e4
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.00441510
sub esp, 8
lea esi, [eax + 1]
mov dword [esp + 4], 0x45a954
lea ebp, [esp + 0x34]
mov dword [esp], ebp
call fcn.00443ca0
sub esp, 8
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], 0xcd0006
mov dword [esp + 0x14], str.DEVICE_LIST
mov dword [esp + 0x10], 0x1c2
mov dword [esp + 0xc], 0x320
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 7
call fcn.00439507
sub esp, 0x20
mov dword [esp + 0x1c], 0x40000008
mov dword [esp + 0x18], 0x82
mov dword [esp + 0x14], str.DEVICE
mov dword [esp + 0x10], 0x19f
mov dword [esp + 0xc], 0x316
mov dword [esp + 8], 5
mov dword [esp + 4], 5
mov dword [esp], 0x87
call fcn.004349cb
sub esp, 0x20
mov dword [esp + 0x14], 0x455f10
mov dword [esp + 0x10], 0x14
mov dword [esp + 0xc], 0x5f
mov dword [esp + 8], 0x1a9
mov dword [esp + 4], 0x253
mov dword [esp], 0x88
call fcn.00432db0
sub esp, 0x18
mov dword [esp + 0x14], 0x455700
mov dword [esp + 0x10], 0x14
mov dword [esp + 0xc], 0x5f
mov dword [esp + 8], 0x1a9
mov dword [esp + 4], 0x2bc
mov dword [esp], 0x89
call fcn.00432db0
sub esp, 0x18
mov dword [esp + 8], esi
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], 0x87
call fcn.00402c00
sub esp, 0xc
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], 0x87
call fcn.00417250
sub esp, 0x10
mov dword [esp + 0x3c], 0x45a954
call fcn.004438e0
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
lea eax, [esp + 0x3c]
mov dword [esp], eax
call fcn.00443d50
sub esp, 8
mov dword [esp + 0x38], 0
call fcn.00443980
call fcn.00443980
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], 0x45a954
call fcn.0040c640
sub esp, 8
call fcn.004439d0
mov dword [esp + 4], eax
lea eax, [esp + 0x38]
mov dword [esp], eax
call fcn.00443b80
sub esp, 8
mov dword [esp], 0x87
call fcn.004300f6
sub esp, 4
mov ebx, 1
lea esi, [esi]
nop
mov dword [esp + 4], 0x4574e4
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00441510
sub esp, 8
cmp eax, ebx
jl 0x417860
call fcn.00443980
call fcn.00443980
call fcn.00443980
call fcn.004439d0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x4574e4
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.004412a0
sub esp, 0x10
call fcn.00443b50
call fcn.00443ad0
mov dword [esp + 8], eax
mov dword [esp + 4], 0xffffffff
mov dword [esp], 0x87
call fcn.0042fd1c
sub esp, 0xc
call fcn.00443a30
add ebx, 1
jmp 0x4177c0
mov dword [esp + 4], 0
mov dword [esp], edi
call sub.USER32.dll_EnableWindow
sub esp, 8
jmp 0x4175bf
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov dword [esp + 4], 7
mov dword [esp], 0x4062d0
call fcn.00439869
sub esp, 8
jmp 0x417953
call fcn.0043bdec
cmp eax, 2
jne 0x417953
mov dword [esp], 0x87
call fcn.0043019a
sub esp, 4
test eax, eax
js 0x417953
call fcn.00443980
call fcn.00443980
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], str.Boot
call fcn.00402140
sub esp, 8
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], str.DISK
call fcn.00402140
sub esp, 8
mov ebx, eax
mov dword [esp], 0x87
call fcn.0043019a
sub esp, 4
mov dword [esp + 0x28], eax
call fcn.004439d0
mov dword [esp + 0x18], eax
movsx eax, byte [esp + 0x24]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
jmp 0x417a0f
cmp eax, 0x333c
je 0x417a32
call fcn.0043931f
cmp eax, 0x332c
jne 0x417948
call fcn.0043bdfb
cmp eax, 0x87
je 0x4178a0
cmp eax, 0x89
je 0x417a32
cmp eax, 0x88
jne 0x417953
mov dword [esp], 0x87
call fcn.0043019a
sub esp, 4
test eax, eax
js 0x417953
call fcn.00443980
call fcn.00443980
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], str.Boot
call fcn.00402140
sub esp, 8
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], str.DISK
call fcn.00402140
sub esp, 8
mov dword [esp + 0x28], eax
mov dword [esp], 0x87
call fcn.0043019a
sub esp, 4
mov ebx, eax
call fcn.004439d0
mov dword [esp + 0x18], eax
movsx eax, byte [esp + 0x24]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0xc], edx
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], 0x87
call fcn.004086e0
sub esp, 0x1c
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00443b80
sub esp, 8
mov dword [esp], 7
call fcn.004398bf
sub esp, 4
test edi, edi
jle 0x417a58
mov dword [esp + 4], 1
mov dword [esp], edi
call sub.USER32.dll_EnableWindow
sub esp, 8
call fcn.00443980
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
mov ebx, eax
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, ebx
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret 0x1c