Function at 0x10008598
Capabilities:
Check if file exists
Get common file path
Print debug messages

Disassembly:
push 0x4c4
mov eax, 0x100735d2
call fcn.1004e336
mov ebx, edx
mov edi, ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x468]
push str.wfchost.exe
xor edx, edx
mov dword [ebp - 0x4b8], eax
call fcn.10035479
pop ecx
and dword [ebp - 4], 0
lea eax, [ebp - 0x468]
cmp dword [ebp - 0x454], 8
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmovae eax, dword [ebp - 0x468]
push eax
call esi
test eax, eax
jne 0x10008644
push 0x208
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.10050900
pop ecx
pop ecx
lea eax, [ebp - 0x420]
mov edx, str.wfchost.exe
push eax
xor ecx, ecx
call fcn.10030529
lea eax, [ebp - 0x420]
push eax
call esi
test eax, eax
je 0x10008aba
lea eax, [ebp - 0x420]
push eax
call fcn.10002f58
pop ecx
push eax
lea eax, [ebp - 0x420]
push eax
lea ecx, [ebp - 0x468]
call fcn.1000660b
test edi, edi
je 0x10008aba
test ebx, ebx
je 0x10008aba
xor esi, esi
lea ecx, [ebp - 0x4d0]
push esi
push esi
call fcn.10039ec1
push edi
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 2
call fcn.1000587d
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x450]
push eax
call fcn.10003a11
sub esp, 0x10
mov byte [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push eax
call fcn.1003910e
push str.title
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 5
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.1003932a
push esi
push 1
lea ecx, [ebp - 0x450]
call fcn.10001805
push esi
inc esi
mov byte [ebp - 4], 2
push esi
lea ecx, [ebp - 0x438]
call fcn.100065b4
push ebx
lea ecx, [ebp - 0x438]
call fcn.1000587d
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x450]
push eax
call fcn.10003a11
sub esp, 0x10
mov byte [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push eax
call fcn.1003910e
push 0x100896f4
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 8
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.1003932a
xor ebx, ebx
lea ecx, [ebp - 0x450]
push ebx
push esi
call fcn.10001805
push ebx
push esi
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 2
call fcn.100065b4
push 0x10089740
lea ecx, [ebp - 0x438]
call fcn.1000587d
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x450]
push eax
call fcn.10003a11
sub esp, 0x10
mov byte [ebp - 4], 0xa
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push eax
call fcn.1003910e
push str.btnText
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0xb
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 0xa
call fcn.1003932a
push ebx
push esi
lea ecx, [ebp - 0x450]
call fcn.10001805
push ebx
push esi
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 2
call fcn.100065b4
mov ecx, dword [ebp - 0x4b8]
mov eax, str.rtmessage.png
test ecx, ecx
cmovne eax, ecx
lea ecx, [ebp - 0x438]
push eax
call fcn.1000587d
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x450]
push eax
call fcn.10003a11
sub esp, 0x10
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push eax
call fcn.1003910e
push str.icoName
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0xe
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.1003932a
push ebx
push esi
lea ecx, [ebp - 0x450]
call fcn.10001805
push ebx
push esi
lea ecx, [ebp - 0x438]
call fcn.100065b4
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push esi
call fcn.1003903d
push str.showNotAlert
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0x18
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.1003932a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push ebx
call fcn.1003903d
push str.runas
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0x19
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.1003932a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push ebx
call fcn.1003903d
push str.fullscreen
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0x1d
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.1003932a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push ebx
call fcn.1003903d
push str.closeExpired
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0x1e
call fcn.1003a121
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.1003932a
lea ecx, [ebp - 0x4b0]
call fcn.10009aac
push 0x208
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x1f
push ebx
push eax
call fcn.10050900
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea ecx, [ebp - 0x450]
call fcn.10009b14
cmp dword [eax + 0x14], 8
jb 0x10008958
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push ebx
push esi
lea ecx, [ebp - 0x450]
call fcn.100065b4
lea eax, [ebp - 0x450]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.1003a565
push eax
lea eax, [ebp - 0x498]
mov byte [ebp - 4], 0x21
push eax
call fcn.1003ec2e
pop ecx
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x23
call fcn.10001805
cmp dword [ebp - 0x484], 0x10
lea edx, [ebp - 0x498]
push dword [ebp - 0x488]
cmovae edx, dword [ebp - 0x498]
lea ecx, [ebp - 0x218]
call fcn.100305d7
lea ecx, [ebp - 0x218]
call fcn.10032026
cmp dword [ebp - 0x454], 8
lea ecx, [ebp - 0x218]
push ecx
lea eax, [ebp - 0x468]
cmovae eax, dword [ebp - 0x468]
push eax
lea eax, [ebp - 0x480]
push str.__ls___common__ls
push eax
call fcn.100324b2
add esp, 0x10
push ebx
mov byte [ebp - 4], 0x24
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x46c], 8
lea ecx, [ebp - 0x480]
cmovae ecx, dword [ebp - 0x480]
call fcn.1003166d
test eax, eax
jne 0x10008a7c
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, 5
je 0x10008a47
call esi
cmp eax, 0x522
jne 0x10008a68
cmp dword [ebp - 0x46c], 8
lea ecx, [ebp - 0x480]
cmovae ecx, dword [ebp - 0x480]
xor esi, esi
inc esi
push esi
call fcn.100314f5
test eax, eax
jne 0x10008a7c
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push str.ShowClientNotify_failed:
call esi
push edi
call esi
mov esi, ebx
jmp 0x10008a83
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
push 1
lea ecx, [ebp - 0x480]
call fcn.100065b4
push ebx
push 1
lea ecx, [ebp - 0x498]
call fcn.10001805
push ebx
push 1
lea ecx, [ebp - 0x4b0]
call fcn.10001805
lea ecx, [ebp - 0x4d0]
call fcn.10039283
jmp 0x10008abe
xor ebx, ebx
mov esi, ebx
push ebx
push 1
lea ecx, [ebp - 0x468]
call fcn.100065b4
mov eax, esi
call fcn.1004e2e0
ret