Function at 0x4419ef
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
cmp dword [0x509678], 0
push ebx
push esi
push edi
jne 0x441f8d
cmp dword [0x508cd4], 0
jne 0x441f8d
mov esi, dword [ebp + 0x10]
xor eax, eax
cmp dword [0x508708], 5
push esi
push dword [ebp + 0xc]
setne al
mov edi, 0x1f4
mov ebx, 0x3e8
push str.WM_DEVICECHANGE_uEvent_u_lParam0xI08x
push 1
dec eax
and eax, edi
add eax, ebx
mov dword [ebp - 4], eax
call fcn.0044c79b
add esp, 0x10
call fcn.0044c653
test esi, esi
je 0x441a5c
push dword [esi + 4]
call fcn.0044e59f
jmp 0x441a61
mov eax, 0x4526c8
push eax
push dword [ebp + 0xc]
call fcn.0044e60a
push eax
push str.WM_DEVICECHANGE__DBT__S_db_hdr__dbch_devicetype_S
push 2
call fcn.0044c79b
add esp, 0x10
push esi
push dword [ebp + 0xc]
call fcn.004326d1
test eax, eax
je 0x441a9a
push str._ignore
push 2
call fcn.0044c79b
pop ecx
pop ecx
jmp 0x441f8d
cmp dword [0x4a0b08], 0
je 0x441f8d
mov eax, dword [ebp + 0xc]
cmp eax, 7
je 0x441f5c
mov ebx, 0x8000
cmp eax, ebx
je 0x441d97
jbe 0x441f8d
cmp eax, 0x8003
jbe 0x441d48
add ebx, 4
cmp eax, ebx
je 0x441c0c
cmp eax, 0x8006
jne 0x441f8d
test esi, esi
jne 0x441b16
push str.Dlg_OnDeviceChange
push 0x1b02
push str..UsbTreeView.cpp
push str.INT3_in__S_line__u__function__S
push 1
call fcn.0044c79b
add esp, 0x14
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x441f8d
cmp dword [esi + 4], 6
jne 0x441f8d
mov eax, dword [esi + 0xc]
mov ebx, dword [esi + 0x10]
lea edi, [esi + 0x14]
push edi
push 0x450730
mov dword [ebp + 0xc], eax
call fcn.00401000
test eax, eax
jne 0x441f8d
push edi
call fcn.004489e1
push eax
push ebx
push dword [ebp + 0xc]
push str._DBT_DEVTYP_HANDLE_hDev0x_08Ix_hNotify0x_08Ix_guid_S
push 3
call fcn.0044c79b
mov ecx, dword [0x50b370]
add esp, 0x14
push ebx
call fcn.00401f47
mov esi, eax
test esi, esi
je 0x441f8d
lea eax, [esi + 0x1738]
push eax
lea eax, [esi + 0xe38]
push eax
push str._dev_s___s_
push 3
call fcn.0044c79b
add esp, 0x10
push edi
push 0x450700
call fcn.00401000
test eax, eax
jne 0x441bd4
push edi
push 0x450710
call fcn.00401000
test eax, eax
jne 0x441bd4
push edi
push 0x4506e0
call fcn.00401000
test eax, eax
jne 0x441bd4
push edi
push 0x4506f0
call fcn.00401000
test eax, eax
jne 0x441bd4
push str._ignore
push 3
jmp 0x441a8e
push dword [esi + 0x10]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_KillTimer]
push 0x4378c2
push 0x64
push dword [esi + 0x10]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
push 0x64
push dword [esi + 0x10]
push str._SetTimer__u___i__UpdateStorageProps_TimerProc_
push 4
call fcn.0044c79b
add esp, 0x10
jmp 0x441f8d
push 0x12340003
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_KillTimer]
test eax, eax
je 0x441c32
push 0x432540
push edi
push 0x12340003
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
test esi, esi
jne 0x441c3d
xor eax, eax
jmp 0x441f90
mov eax, dword [esi + 4]
cmp eax, 5
jne 0x441d0b
lea edi, [esi + 0xc]
push edi
call fcn.00448b75
test eax, eax
jne 0x441c62
push 1
push edi
call fcn.00448d77
test eax, eax
je 0x441c72
push eax
push str._______________________S_______________________
push 0
call fcn.0044c79b
add esp, 0xc
push 4
pop ebx
cmp dword [0x515894], ebx
jl 0x441cae
push 1
push edi
call fcn.00448d77
push eax
push str._clsguid_S
push ebx
call fcn.0044c79b
add esp, 0xc
cmp dword [0x515894], ebx
jl 0x441cae
lea eax, [esi + 0x1c]
push eax
push str._devpath_s
push ebx
call fcn.0044c79b
add esp, 0xc
xor edi, edi
push edi
push edi
add esi, 0x1c
push esi
call fcn.0043f748
test eax, eax
jne 0x441f8d
cmp dword [0x515894], ebx
jl 0x441cdc
push dword [ebp - 4]
push str.starting_TIMERID_REFRESHTREE_after_DeviceRemoved_returned_false__t_u
push ebx
call fcn.0044c79b
add esp, 0xc
push 0x15227010
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_KillTimer]
push 0x43cbbe
push dword [ebp - 4]
push 0x12340001
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
push str.OnDevCh
push edi
jmp 0x441ece
cmp eax, 6
jne 0x441f2e
mov edi, dword [esi + 0xc]
mov esi, dword [esi + 0x10]
push str.HANDLE
push str._______________________S_______________________
push 0
call fcn.0044c79b
push esi
push edi
push str.hDev0x_08Ix_hNotify0x_08Ix
push 1
call fcn.0044c79b
add esp, 0x1c
push esi
push ebx
call fcn.0044190f
jmp 0x441f8d
test esi, esi
je 0x441c36
push dword [esi + 4]
call fcn.0044e59f
push eax
push dword [ebp + 0xc]
call fcn.0044e60a
push eax
push str.WM_DEVICECHANGE__DBT__S_db_hdr__dbch_devicetype_S
push 1
call fcn.0044c79b
add esp, 0x10
cmp dword [esi + 4], 6
jne 0x441f8d
mov edi, dword [esi + 0x10]
push edi
push dword [esi + 0xc]
push str.hDev0x_08Ix_hNotify0x_08Ix
push 1
call fcn.0044c79b
add esp, 0x10
push edi
push dword [ebp + 0xc]
jmp 0x441d3e
test esi, esi
je 0x441c36
mov eax, dword [esi + 4]
cmp eax, 5
jne 0x441edd
lea edi, [esi + 0xc]
push edi
call fcn.00448b75
test eax, eax
jne 0x441dc4
push 1
push edi
call fcn.00448d77
test eax, eax
je 0x441dd4
push eax
push str.______________________S______________________
push 0
call fcn.0044c79b
add esp, 0xc
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x20a]
push eax
call fcn.00446b72
add esp, 0xc
push 0x104
lea eax, [ebp - 0x20c]
push eax
lea eax, [esi + 0x24]
push eax
call fcn.0042e1b8
push 4
pop ebx
cmp dword [0x515894], ebx
jl 0x441e60
push 1
push edi
call fcn.00448d77
push eax
push str._clsguid_S
push ebx
call fcn.0044c79b
add esp, 0xc
cmp dword [0x515894], ebx
jl 0x441e60
lea eax, [esi + 0x1c]
push eax
push str._devpath_s
push ebx
call fcn.0044c79b
add esp, 0xc
cmp dword [0x515894], ebx
jl 0x441e60
lea eax, [ebp - 0x20c]
push eax
push str._krnlnam_s
push ebx
call fcn.0044c79b
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x5096a8], eax
xor eax, eax
cmp word [ebp - 0x20c], ax
je 0x441f8d
push eax
push edi
push eax
add esi, 0x1c
push esi
call fcn.0043dc29
test eax, eax
jne 0x441f8d
push 0x15227010
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_KillTimer]
cmp dword [0x515894], ebx
jl 0x441eb1
push str.starting_TIMERID_REFRESHTREE_after_DeviceArrived_returned_false
push ebx
call fcn.0044c79b
pop ecx
pop ecx
push 0x43cbbe
push dword [ebp - 4]
push 0x12340001
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
push str.OnDevCh
push 0
push 0x7f8a
call fcn.004336e7
jmp 0x441f8d
cmp eax, 6
jne 0x441f2e
mov edi, dword [esi + 0xc]
mov esi, dword [esi + 0x10]
push str.HANDLE
push str.______________________S______________________
push 0
call fcn.0044c79b
push esi
push edi
push str.hDev0x_08Ix_hNotify0x_08Ix
push 1
call fcn.0044c79b
mov ecx, dword [0x50b370]
add esp, 0x1c
push esi
call fcn.00401f47
test eax, eax
je 0x441f8d
push 0
push 0
push dword [eax + 0x10]
add eax, 0xc30
push eax
call fcn.0043dc29
jmp 0x441f8d
cmp eax, 2
jne 0x441f3c
push esi
push ebx
call fcn.00437915
jmp 0x441f8d
cmp eax, 3
jne 0x441f8d
add esi, 0xc
push esi
push str._name_s
push eax
call fcn.0044c79b
add esp, 0xc
push esi
push ebx
call fcn.00432711
jmp 0x441f8d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [sym.imp.USER32.dll_SetTimer]
push 0x432540
push edi
push 0x12340003
push dword [ebp + 8]
mov dword [0x5096a8], eax
call esi
push 0x432383
push ebx
push 0x12340004
push dword [ebp + 8]
call esi
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret 0xc