Function at 0x4344ac
Capabilities:
Check if file exists
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [0x4fa148]
sub esp, 0xc10
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
cmp dword [esi], ecx
jne 0x434c27
mov eax, dword [esi + 8]
mov edx, 0xfffffe3e
cmp eax, edx
ja 0x4349b3
je 0x434646
cmp eax, 0xfffffe34
je 0x434802
cmp eax, 0xfffffe35
je 0x434719
cmp eax, 0xfffffe36
je 0x434652
cmp eax, 0xfffffe39
je 0x434565
cmp eax, 0xfffffe3a
je 0x434646
cmp eax, 0xfffffe3d
jne 0x434c27
mov eax, dword [esi + 0x3c]
xor edi, edi
cmp eax, edi
je 0x43454f
mov ecx, dword [esi + 0x14]
push eax
push dword [ebp + 0xc]
mov dword [0x4fa860], ecx
push 0x8001
push dword [0x4fa140]
mov dword [0x4fa864], eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [0x4fa148]
push 1
push edi
push edi
push ecx
mov dword [0x4fa120], edi
call dword [sym.imp.USER32.dll_SetScrollPos]
jmp 0x434c27
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x434646
push eax
call fcn.0042e9e9
mov edi, eax
test edi, edi
je 0x434646
mov esi, dword [esi + 0xc]
push 4
pop ebx
cmp dword [0x506bac], ebx
jl 0x4345d0
push dword [edi + 8]
push dword [0x4fa148]
call fcn.00426efb
lea ecx, [edi + 0xcf6]
cmp word [ecx], 0
jne 0x4345ad
mov ecx, 0x449ccc
push dword [edi + 0x81c]
push ecx
push eax
push dword [edi + 0xff4]
push esi
call fcn.00442ea6
push eax
push str.TVN_ITEMEXPANDED__S_pTNI__bExp_u__u___s____s
push ebx
call fcn.004453fb
add esp, 0x1c
cmp esi, 2
jne 0x4345e1
mov dword [edi + 0xff4], 1
jmp 0x434612
cmp esi, 1
jne 0x4345ef
and dword [edi + 0xff4], 0
jmp 0x434612
cmp esi, 3
jne 0x43460a
push dword [edi + 8]
push dword [0x4fa148]
call fcn.00426efb
mov dword [edi + 0xff4], eax
jmp 0x434612
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
push str.pTNI__bLastExpandManuallytrue
push ebx
mov dword [edi + 0xff8], 1
call fcn.004453fb
cmp dword [0x4fc5b0], 0
pop ecx
pop ecx
jne 0x434646
mov eax, dword [edi + 0x10]
cmp eax, 9
je 0x43463f
cmp eax, 0xa
jne 0x434646
mov ecx, edi
call fcn.00406c3d
and dword [0x4fa120], 0
jmp 0x434c27
mov esi, dword [esi + 0x14]
push 4
pop ebx
cmp dword [0x506bac], ebx
jl 0x43466f
push esi
push str.TVN_DELETEITEM_hti0x_08Ix
push ebx
call fcn.004453fb
add esp, 0xc
push esi
call fcn.0042e9e9
mov edi, eax
test edi, edi
je 0x434c27
cmp dword [0x506bac], ebx
jl 0x4346d2
lea eax, [edi + 0xcf6]
cmp word [eax], 0
jne 0x434698
mov eax, 0x449ccc
push eax
push dword [edi + 0x81c]
push str.__s_at__s
push ebx
call fcn.004453fb
add esp, 0x10
cmp dword [0x506bac], ebx
jl 0x4346d2
push dword [edi + 8]
push dword [0x4fa148]
call fcn.0042fa68
push eax
push str._txt_s
push ebx
call fcn.004453fb
add esp, 0xc
cmp esi, dword [0x4fa864]
jne 0x4346e1
and dword [0x4fa864], 0
cmp edi, dword [0x4fc5c4]
jne 0x434708
lea eax, [edi + 0xc58]
mov ecx, dword [eax]
test ecx, ecx
je 0x434c27
and dword [eax], 0
push ecx
call fcn.0043f6b6
pop ecx
jmp 0x434c27
mov ecx, dword [0x4fc540]
push edi
call fcn.0040be6d
jmp 0x434c27
push dword [esi + 0x10]
call fcn.0042e9e9
mov esi, eax
xor edi, edi
cmp esi, edi
je 0x4347e6
push dword [esi + 0xfc0]
mov ecx, dword [0x4fc544]
call fcn.004011ae
test eax, eax
je 0x4347e6
cmp dword [esi + 0x10], 6
jl 0x4347e6
push edi
push edi
push 0x110f
push dword [0x4fa148]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x42cfe8
push 0xfffffffffffffffc
push eax
mov dword [0x4fa180], eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [0x4fa224], eax
mov eax, dword [esi + 0xfc0]
lea ecx, [eax + 0x1634]
cmp word [ecx], di
jne 0x4347be
mov ecx, dword [0x492a64]
sub ecx, edi
je 0x4347ad
dec ecx
je 0x4347a5
dec ecx
jne 0x4347cb
add esi, 0xa5c
push esi
jmp 0x4347bf
add esi, 0x860
jmp 0x4347a2
lea ecx, [eax + 0x1734]
cmp word [ecx], di
jne 0x4347be
lea ecx, [eax + 0x1834]
push ecx
push dword [0x4fa180]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0xfe
push 0x4fb118
push dword [0x4fa180]
call dword [sym.imp.USER32.dll_GetWindowTextW]
jmp 0x434c27
push edi
push 1
push 0x1116
push dword [0x4fa148]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
inc eax
jmp 0x434c29
cmp dword [esi + 0x1c], 0
je 0x434c27
push str.lblendedit
push 0
push 0x7f02
call fcn.0042eaf5
push dword [esi + 0x10]
call fcn.0042e9e9
mov dword [ebp + 8], eax
test eax, eax
je 0x434996
mov ecx, dword [0x4fc544]
mov edi, eax
add edi, 0xfc0
push dword [edi]
call fcn.004011ae
test eax, eax
je 0x434996
mov edi, dword [edi]
mov ebx, dword [sym.imp.USER32.dll_wsprintfW]
push str.Device_Parameters
lea eax, [edi + 0xe34]
push eax
push str.SystemCurrentControlSetEnum
mov dword [ebp + 0x10], eax
lea eax, [ebp - 0x410]
push 0x44a08c
push eax
call ebx
mov eax, dword [esi + 0x1c]
add esp, 0x14
cmp word [eax], 0
jne 0x4348ba
push str.CustomName
lea eax, [ebp - 0x410]
push eax
push 0x80000002
call fcn.004250cc
test eax, eax
jne 0x4348ac
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x434966
xor eax, eax
mov word [edi + 0x1634], ax
jmp 0x43495a
push 0x4fb118
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x434996
push dword [esi + 0x1c]
add edi, 0x1634
push edi
mov dword [ebp + 0xc], edi
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x434996
push dword [esi + 0x1c]
lea eax, [ebp - 0x410]
push str.CustomName
push eax
mov edi, 0x80000002
push edi
call fcn.00424f97
test eax, eax
je 0x434966
push dword [ebp + 0x10]
lea eax, [ebp - 0x410]
push str.SystemCurrentControlSetEnum
push 0x449eb0
push eax
call ebx
add esp, 0x10
push dword [esi + 0x1c]
lea eax, [ebp - 0x410]
push str.FriendlyName
push eax
push edi
call fcn.00424f97
push dword [esi + 0x1c]
push str.CustomName__s_set
push 3
call fcn.004453fb
add esp, 0xc
push dword [esi + 0x1c]
mov dword [esi + 0xc], 0x11
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov ecx, dword [ebp + 8]
push 1
call fcn.00409ef4
jmp 0x434996
call fcn.00443016
push eax
lea eax, [ebp - 0xc10]
push str.Error__S_writing_to_registry
push eax
call ebx
add esp, 0xc
push 0x30
push str.Set_name_failed
lea eax, [ebp - 0xc10]
push eax
push dword [0x4fa140]
call fcn.00446292
and dword [0x4fa180], 0
push str.lblendedit
push 0
push 0x7f00
call fcn.0042eaf5
jmp 0x434c27
cmp eax, 0xfffffe62
je 0x434bc9
cmp eax, 0xfffffe64
je 0x434b73
cmp eax, 0xfffffff4
je 0x434a32
cmp eax, 0xfffffff8
je 0x434a21
cmp eax, 0xfffffffb
jne 0x434c27
mov esi, dword [sym.imp.USER32.dll_SendDlgItemMessageW]
push 0
push 8
push 0x110a
mov edi, 0x3e8
push edi
push dword [ebp + 8]
call esi
mov dword [ebp + 0x10], eax
test eax, eax
je 0x434c27
push eax
push 9
mov ebx, 0x110b
push ebx
push edi
push dword [ebp + 8]
call esi
push dword [ebp + 0x10]
push 8
push ebx
push edi
push dword [ebp + 8]
call esi
jmp 0x434c27
push dword [0x4fa864]
push ecx
call fcn.0042dc83
jmp 0x434c27
mov eax, dword [esi + 0xc]
dec eax
je 0x434b42
sub eax, 0x10000
jne 0x434c27
mov edi, dword [esi + 0x24]
push 5
pop ebx
cmp dword [0x506bac], ebx
jl 0x434a67
push dword [esi + 0x28]
push edi
push str.CDDS_ITEMPREPAINT_hTreeItem0x_08Ix_pCustomDraw__nmcd.uItemState0x_02X
push ebx
call fcn.004453fb
add esp, 0x10
test edi, edi
je 0x434c27
push edi
call fcn.0042e9e9
mov edi, eax
push edi
call fcn.00406b7b
test eax, eax
je 0x434c27
cmp dword [edi + 8], 0
je 0x434c27
cmp dword [0x506bac], ebx
jl 0x434ad1
push dword [edi + 0x81c]
lea eax, [edi + 0xcf6]
push eax
push str.__s____s
push ebx
call fcn.004453fb
add esp, 0x10
cmp dword [0x506bac], ebx
jl 0x434ad1
push dword [esi + 0x28]
push dword [edi + 0xfe0]
push str._JustArrivedRemoved_i_state0x_02X
push ebx
call fcn.004453fb
add esp, 0x10
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 0x34]
push eax
push dword [esi + 0x28]
push edi
call fcn.00431471
test eax, eax
je 0x434c27
cmp dword [0x4f9b48], ebx
jne 0x434afd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4fa120], eax
cmp dword [0x4f9b60], 0x500
jbe 0x434b3e
cmp dword [0x4fa130], 0
jne 0x434b3e
push 1
push dword [0x4fa140]
call fcn.00425a34
mov eax, dword [0x492a40]
push 0x42cc03
add eax, 0x64
push eax
push 0x92025971
push dword [0x4fa140]
call dword [sym.imp.USER32.dll_SetTimer]
push 2
jmp 0x434b63
push 5
pop ebx
cmp dword [0x506bac], ebx
jl 0x434b61
push dword [esi + 0x28]
push dword [esi + 0x24]
push str.CDDS_PREPAINT_hTreeItem0x_08Ix_pCustomDraw__nmcd.uItemState0x_02X
push ebx
call fcn.004453fb
add esp, 0x10
push 0x20
push 0
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetWindowLongW]
jmp 0x4347fa
cmp word [esi + 0xc], 0x71
jne 0x434c27
push dword [0x4fa864]
call fcn.0042e9e9
mov esi, eax
test esi, esi
je 0x434c27
push dword [esi + 0xfc0]
mov ecx, dword [0x4fc544]
call fcn.004011ae
test eax, eax
je 0x434c27
cmp dword [esi + 0x10], 6
jl 0x434c27
push dword [0x4fa864]
push 0
push 0x1141
push dword [0x4fa148]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x434c27
and dword [ebp - 0x10], 0
mov ebx, dword [esi + 0x14]
xor eax, eax
lea edi, [ebp - 0xc]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x10]
push eax
push 0
push 0x1111
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call fcn.0042e9e9
xor edi, edi
add esi, 0xc
cmp eax, edi
je 0x434c0d
add eax, 0xc5c
cmp byte [eax], 0
je 0x434c0d
push eax
push dword [esi]
call fcn.0042a00c
jmp 0x434c0f
mov dword [esi], edi
cmp dword [esi], edi
je 0x434c27
cmp dword [0x4fa130], edi
jne 0x434c27
push edi
push dword [0x4fa140]
call fcn.00425a34
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 0xc