Function at 0x49dffd
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x52de80]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push esi
push str.StopSvr___ws__r_n
push 0x55913c
call fcn.004a9ba2
add esp, 0xc
call fcn.0049bd0b
push esi
lea ecx, [ebp - 0x54]
call fcn.004045f0
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x6c]
call fcn.004045c0
lea eax, [ebp - 0x6c]
push eax
call fcn.0049dc49
mov esi, str.knbcenter.exe
push esi
call fcn.00402df0
pop ecx
pop ecx
push eax
push esi
lea ecx, [ebp - 0x6c]
call fcn.00406420
cmp dword [ebp - 0x58], 8
lea eax, [ebp - 0x6c]
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmovae eax, dword [ebp - 0x6c]
push eax
call edi
xor ebx, ebx
test eax, eax
jne 0x49e1d3
cmp dword [ebp - 0x58], 8
lea eax, [ebp - 0x6c]
cmovae eax, dword [ebp - 0x6c]
push eax
push str.CUninstall_StopSvr_PathFileExists___ws_r_n
push 0x55913c
call fcn.004a9ba2
add esp, 0xc
lea ecx, [ebp - 0x24]
call fcn.004253a0
lea ecx, [ebp - 0x24]
call fcn.004253c9
test eax, eax
js 0x49e240
lea ecx, [ebp - 0x24]
call fcn.00425494
test eax, eax
je 0x49e240
call fcn.00420e4a
push eax
lea ecx, [ebp - 0x74]
call fcn.00423e50
call fcn.00420e4a
push eax
lea ecx, [ebp - 0x70]
call fcn.00423e50
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x24]
call fcn.004257ba
lea ecx, [ebp - 0x74]
call fcn.0043e64b
push eax
lea ecx, [ebp - 0x74]
call fcn.00425b83
push esi
lea ecx, [ebp - 0x74]
call fcn.00467cb0
test eax, eax
jne 0x49e13d
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x24]
call fcn.004255c5
test eax, eax
js 0x49e13d
lea ecx, [ebp - 0x70]
call fcn.0043e64b
push eax
lea ecx, [ebp - 0x70]
call fcn.00425b83
push ebx
push esi
lea ecx, [ebp - 0x70]
call fcn.0049bb47
cmp eax, 0xffffffff
jne 0x49e165
mov ecx, dword [ebp - 0x70]
lea ecx, [ecx - 0x10]
call fcn.0042095b
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx - 0x10]
call fcn.0042095b
lea ecx, [ebp - 0x24]
call fcn.004254a2
test eax, eax
jne 0x49e0c7
jmp 0x49e1cb
push eax
push ebx
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x70]
call fcn.0043124d
mov esi, dword [eax]
push esi
call fcn.00402df0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x54]
call fcn.00406500
mov ecx, dword [ebp - 0x88]
lea ecx, [ecx - 0x10]
call fcn.0042095b
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
cmovae eax, dword [ebp - 0x54]
push eax
push str.CUninstall_StopSvr_wstrPath___ws_r_n
push 0x55913c
call fcn.004a9ba2
mov ecx, dword [ebp - 0x70]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.0042095b
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx - 0x10]
call fcn.0042095b
lea ecx, [ebp - 0x24]
call fcn.004252c2
cmp dword [ebp - 0x44], ebx
je 0x49e452
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004045c0
lea eax, [ebp - 0x1c]
push eax
call fcn.0049dc49
mov esi, str.Module_securityknbpolicy.dll
push esi
call fcn.00402df0
pop ecx
pop ecx
push eax
push esi
lea ecx, [ebp - 0x1c]
call fcn.00406420
push 8
pop esi
cmp dword [ebp - 8], esi
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
call edi
test eax, eax
jne 0x49e250
cmp dword [ebp - 8], esi
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
push str.PathFileExists_wstrPath___ws_no_exists__r_n
push 0x55913c
call fcn.004a9ba2
add esp, 0xc
mov esi, ebx
jmp 0x49e414
lea ecx, [ebp - 0x24]
call fcn.004252c2
push 6
pop esi
jmp 0x49e454
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x3c]
call fcn.004045c0
lea eax, [ebp - 0x3c]
push eax
call fcn.0049dc49
mov dword [esp], str.knbcenter.exe
call fcn.00402df0
pop ecx
push eax
push str.knbcenter.exe
lea ecx, [ebp - 0x3c]
call fcn.00406420
cmp dword [ebp - 0x28], esi
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
push eax
call edi
test eax, eax
lea eax, [ebp - 0x3c]
jne 0x49e2b0
cmp dword [ebp - 0x28], esi
cmovae eax, dword [ebp - 0x3c]
push eax
push str.PathFileExists_wstrPath___ws_no_exists__r_n
push 0x55913c
call fcn.004a9ba2
add esp, 0xc
jmp 0x49e2c6
cmp dword [ebp - 0x28], esi
push ebx
cmovae eax, dword [ebp - 0x3c]
push ebx
push eax
call fcn.0049cd91
add esp, 0xc
test eax, eax
jne 0x49e2cd
mov esi, ebx
jmp 0x49e409
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
call fcn.0049f51b
cmp dword [ebp - 8], esi
lea eax, [ebp - 0x1c]
mov esi, 0x55913c
cmovae eax, dword [ebp - 0x1c]
push eax
push str.CUninstall_StopSvr_LoadInterface___ws_r_n
push esi
call fcn.004a9ba2
add esp, 0xc
lea eax, [ebp - 0x1c]
cmp dword [ebp - 8], 8
lea ecx, [ebp - 0x84]
cmovae eax, dword [ebp - 0x1c]
push eax
call fcn.0049d1b9
test eax, eax
jne 0x49e325
xor esi, esi
inc esi
jmp 0x49e3ee
push str.CUninstall_Initialize_Begin__r_n
push esi
call fcn.004a9ba2
mov eax, dword [ebp - 0x84]
pop ecx
pop ecx
push ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
test eax, eax
jne 0x49e34a
push 2
jmp 0x49e3ed
push str.CUninstall_Initialize_End__r_n
push esi
call fcn.004a9ba2
push str.CUninstall_ExitHostProcess_Begin__r_n
push esi
call fcn.004a9ba2
mov eax, dword [ebp - 0x84]
add esp, 0x10
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0x78]
test eax, eax
jne 0x49e378
push 3
jmp 0x49e3ed
push str.CUninstall_ExitHostProcess_End__r_n
push esi
call fcn.004a9ba2
push str.CUninstall_UnInitialize_Begin__r_n
push esi
call fcn.004a9ba2
mov eax, dword [ebp - 0x84]
add esp, 0x10
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
test eax, eax
jne 0x49e3a5
push 4
jmp 0x49e3ed
push str.CUninstall_UnInitialize_End__r_n
push esi
call fcn.004a9ba2
push str.CUninstall_StopSvr_End__r_n
push esi
call fcn.004a9ba2
add esp, 0x10
push 0xa
pop esi
cmp dword [ebp - 0x28], 8
lea eax, [ebp - 0x3c]
push ebx
cmovae eax, dword [ebp - 0x3c]
push ebx
push eax
call fcn.0049cd91
add esp, 0xc
test eax, eax
je 0x49e421
dec esi
je 0x49e3eb
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x49e3c1
push 7
pop esi
lea ecx, [ebp - 0x84]
call fcn.0049bb81
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x49e409
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push ebx
push 1
lea ecx, [ebp - 0x3c]
call fcn.00402540
push ebx
push 1
lea ecx, [ebp - 0x1c]
call fcn.00402540
jmp 0x49e454
lea ecx, [ebp - 0x84]
call fcn.0049bb81
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x49e43c
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push ebx
push 1
lea ecx, [ebp - 0x3c]
call fcn.00402540
push ebx
push 1
lea ecx, [ebp - 0x1c]
call fcn.00402540
mov esi, ebx
push ebx
push 1
lea ecx, [ebp - 0x6c]
call fcn.00402540
push ebx
push 1
lea ecx, [ebp - 0x54]
call fcn.00402540
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004bc45f
mov esp, ebp
pop ebp
ret