Function at 0x47133a
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x4eb664]
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 0x4eee98
call fcn.004738c9
add esp, 0xc
call fcn.004667d9
push esi
lea ecx, [ebp - 0x6c]
call fcn.0040513a
push 7
pop edi
xor eax, eax
push 0xffffffffffffffff
xor esi, esi
mov word [ebp - 0x54], ax
push esi
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x44], esi
call fcn.00405a06
lea eax, [ebp - 0x54]
push eax
call fcn.00468749
mov ebx, str.knbcenter.exe
push ebx
call fcn.00405113
pop ecx
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x54]
call fcn.004046dd
cmp dword [ebp - 0x40], 8
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea eax, [ebp - 0x54]
cmovae eax, dword [ebp - 0x54]
push eax
call ebx
test eax, eax
jne 0x47152a
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
cmovae eax, dword [ebp - 0x54]
push eax
push str.CUninstall_StopSvr_PathFileExists___ws_r_n
push 0x4eee98
call fcn.004738c9
add esp, 0xc
lea ecx, [ebp - 0x24]
call fcn.0040649c
lea ecx, [ebp - 0x24]
call fcn.004064c5
test eax, eax
js 0x4715a8
lea ecx, [ebp - 0x24]
call fcn.00406590
test eax, eax
je 0x4715a8
push 0x4eb630
lea ecx, [ebp - 0x74]
call fcn.004044ee
push 0x4eb630
lea ecx, [ebp - 0x70]
call fcn.004044ee
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x24]
call fcn.004068b2
lea ecx, [ebp - 0x74]
call fcn.0041c913
push eax
lea ecx, [ebp - 0x74]
call fcn.00406bd9
push str.knbcenter.exe
lea ecx, [ebp - 0x74]
call fcn.004304b2
test eax, eax
jne 0x471492
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x24]
call fcn.004066c7
test eax, eax
js 0x471492
lea ecx, [ebp - 0x70]
call fcn.0041c913
push eax
lea ecx, [ebp - 0x70]
call fcn.00406bd9
push esi
push str.knbcenter.exe
lea ecx, [ebp - 0x70]
call fcn.004665fb
cmp eax, 0xffffffff
jne 0x4714ba
mov ecx, dword [ebp - 0x70]
lea ecx, [ecx - 0x10]
call fcn.00404f8d
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx - 0x10]
call fcn.00404f8d
lea ecx, [ebp - 0x24]
call fcn.0040659e
test eax, eax
jne 0x471416
jmp 0x471522
push eax
push esi
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x70]
call fcn.0040dcee
mov esi, dword [eax]
push esi
call fcn.00405113
pop ecx
push eax
push esi
lea ecx, [ebp - 0x6c]
call fcn.0040509a
mov ecx, dword [ebp - 0x88]
lea ecx, [ecx - 0x10]
call fcn.00404f8d
cmp dword [ebp - 0x58], 8
lea eax, [ebp - 0x6c]
cmovae eax, dword [ebp - 0x6c]
push eax
push str.CUninstall_StopSvr_wstrPath___ws_r_n
push 0x4eee98
call fcn.004738c9
mov ecx, dword [ebp - 0x70]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00404f8d
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx - 0x10]
call fcn.00404f8d
xor esi, esi
lea ecx, [ebp - 0x24]
call fcn.004063bf
cmp dword [ebp - 0x5c], 0
je 0x4717d0
xor eax, eax
push 0xffffffffffffffff
mov word [ebp - 0x1c], ax
push esi
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], esi
call fcn.00405a06
lea eax, [ebp - 0x1c]
push eax
call fcn.00468749
mov esi, str.Module_securityknbpolicy.dll
push esi
call fcn.00405113
pop ecx
pop ecx
push eax
push esi
lea ecx, [ebp - 0x1c]
call fcn.004046dd
cmp dword [ebp - 8], 8
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
call ebx
test eax, eax
jne 0x4715b8
cmp dword [ebp - 8], 8
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
push str.PathFileExists_wstrPath___ws_no_exists__r_n
push 0x4eee98
call fcn.004738c9
add esp, 0xc
xor esi, esi
mov edi, esi
jmp 0x471790
lea ecx, [ebp - 0x24]
call fcn.004063bf
push 6
pop edi
jmp 0x4717d2
xor eax, eax
push 0xffffffffffffffff
xor esi, esi
mov word [ebp - 0x3c], ax
push esi
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], esi
call fcn.00405a06
lea eax, [ebp - 0x3c]
push eax
call fcn.00468749
mov dword [esp], str.knbcenter.exe
call fcn.00405113
pop ecx
push eax
push str.knbcenter.exe
lea ecx, [ebp - 0x3c]
call fcn.004046dd
cmp dword [ebp - 0x28], 8
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
push eax
call ebx
test eax, eax
lea eax, [ebp - 0x3c]
jne 0x47162b
cmp dword [ebp - 0x28], 8
cmovae eax, dword [ebp - 0x3c]
push eax
push str.PathFileExists_wstrPath___ws_no_exists__r_n
push 0x4eee98
call fcn.004738c9
add esp, 0xc
jmp 0x471642
cmp dword [ebp - 0x28], 8
push esi
cmovae eax, dword [ebp - 0x3c]
push esi
push eax
call fcn.004678ec
add esp, 0xc
test eax, eax
jne 0x471649
mov edi, esi
jmp 0x471785
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x78], esi
call fcn.00472899
cmp dword [ebp - 8], 8
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
push str.CUninstall_StopSvr_LoadInterface___ws_r_n
mov ebx, 0x4eee98
push ebx
call fcn.004738c9
add esp, 0xc
cmp dword [ebp - 8], 8
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x84]
call fcn.0046d5aa
test eax, eax
jne 0x4716a2
xor edi, edi
inc edi
jmp 0x47176a
push str.CUninstall_Initialize_Begin__r_n
push ebx
call fcn.004738c9
mov eax, dword [ebp - 0x84]
pop ecx
pop ecx
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0xc]
test eax, eax
jne 0x4716c4
push 2
jmp 0x47171d
push str.CUninstall_Initialize_End__r_n
push ebx
call fcn.004738c9
push str.CUninstall_ExitHostProcess_Begin__r_n
push ebx
call fcn.004738c9
mov eax, dword [ebp - 0x84]
add esp, 0x10
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0x78]
test eax, eax
jne 0x4716f2
push 3
jmp 0x47171d
push str.CUninstall_ExitHostProcess_End__r_n
push ebx
call fcn.004738c9
push str.CUninstall_UnInitialize_Begin__r_n
push ebx
call fcn.004738c9
mov eax, dword [ebp - 0x84]
add esp, 0x10
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
test eax, eax
jne 0x471720
push 4
pop edi
jmp 0x47176a
push str.CUninstall_UnInitialize_End__r_n
push ebx
call fcn.004738c9
push str.CUninstall_StopSvr_End__r_n
push ebx
call fcn.004738c9
add esp, 0x10
push 0xa
pop esi
cmp dword [ebp - 0x28], 8
push 0
lea eax, [ebp - 0x3c]
cmovae eax, dword [ebp - 0x3c]
push 0
push eax
call fcn.004678ec
add esp, 0xc
test eax, eax
je 0x47179d
dec esi
je 0x471768
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x47173c
xor esi, esi
lea ecx, [ebp - 0x84]
call fcn.0046b85c
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x471785
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push esi
push 1
lea ecx, [ebp - 0x3c]
call fcn.00405ac5
push esi
push 1
lea ecx, [ebp - 0x1c]
call fcn.00405ac5
jmp 0x4717d2
lea ecx, [ebp - 0x84]
call fcn.0046b85c
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x4717b8
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
xor esi, esi
push esi
push 1
lea ecx, [ebp - 0x3c]
call fcn.00405ac5
push esi
push 1
lea ecx, [ebp - 0x1c]
call fcn.00405ac5
mov edi, esi
push esi
push 1
lea ecx, [ebp - 0x54]
call fcn.00405ac5
push esi
push 1
lea ecx, [ebp - 0x6c]
call fcn.00405ac5
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0048f059
leave
ret 4