Function at 0x10005150
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x248
mov eax, dword [0x100281f0]
xor eax, ebp
mov dword [ebp - 4], eax
mov edx, dword [ebp + 8]
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_OpenProcess]
push esi
push edi
mov dword [ebp - 0x210], edx
mov eax, dword [edx]
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x218], 0
push ecx
push 1
push 0xffffffffffffffff
push edx
mov dword [ebp - 0x214], 0
call dword [eax + 0x10]
mov edx, dword [ebp - 0x210]
test eax, eax
js 0x10005175
mov ecx, dword [ebp - 0x214]
test ecx, ecx
je 0x10005175
mov eax, dword [ecx]
lea edx, [ebp - 0x248]
push 0
push 0
push edx
push 0
push str.TargetInstance
push ecx
call dword [eax + 0x10]
test eax, eax
js 0x100056d4
cmp word [ebp - 0x248], 0xd
jne 0x100056d4
mov esi, dword [ebp - 0x240]
test esi, esi
je 0x100056d4
mov eax, dword [esi]
lea ecx, [ebp - 0x238]
push 0
push 0
push ecx
push 0
push str.ProcessID
push esi
call dword [eax + 0x10]
test eax, eax
js 0x100056c8
mov eax, dword [esi]
lea ecx, [ebp - 0x228]
push 0
push 0
push ecx
push 0
push str.Name
push esi
call dword [eax + 0x10]
test eax, eax
js 0x100056c8
push str.client.exe
push dword [ebp - 0x220]
call fcn.10015106
add esp, 8
test eax, eax
jne 0x10005367
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x100056c8
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008830
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x100056c8
lea eax, [ebp - 0x108]
push eax
call fcn.1001d84b
lea eax, [ebp - 0x108]
push str._tclsclient.exe
push eax
call fcn.10008a10
add esp, 0xc
test eax, eax
je 0x100056c8
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008830
add esp, 0xc
xor ecx, ecx
jmp 0x100052f0
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x20d], al
test al, al
jne 0x100052f0
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10005310
mov ecx, 6
lea eax, [ebp - 0x20c]
mov esi, str.AirlibClientLibGame.dat
rep movsd dword es:[edi], dword [esi]
push eax
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x100056c8
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b0f], al
test al, al
jne 0x10005340
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10007d7d
mov esp, ebp
pop ebp
ret
push str.taslogin.exe
push dword [ebp - 0x220]
call fcn.10015106
add esp, 8
test eax, eax
jne 0x10005497
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x100056c8
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008830
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x100056c8
lea eax, [ebp - 0x108]
push eax
call fcn.1001d84b
lea eax, [ebp - 0x108]
push str._tcls_tenprotect_taslogin.exe
push eax
call fcn.10008a10
add esp, 0xc
test eax, eax
je 0x100056c8
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008830
add esp, 0xc
xor ecx, ecx
lea ecx, [ecx]
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x20d], al
test al, al
jne 0x10005420
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10005440
mov ecx, 6
lea eax, [ebp - 0x20c]
mov esi, str.AirlibClientLibGame.dat
rep movsd dword es:[edi], dword [esi]
push eax
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x100056c8
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b0f], al
test al, al
jne 0x10005470
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10007d7d
mov esp, ebp
pop ebp
ret
push str.CrossProxy.exe
push dword [ebp - 0x220]
call fcn.10015106
add esp, 8
test eax, eax
jne 0x100055c7
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x100056c8
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008830
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x100056c8
lea eax, [ebp - 0x108]
push eax
call fcn.1001d84b
lea eax, [ebp - 0x108]
push str.crosscrossProxy.exe
push eax
call fcn.10008a10
add esp, 0xc
test eax, eax
je 0x100056c8
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008830
add esp, 0xc
xor ecx, ecx
lea ecx, [ecx]
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x20d], al
test al, al
jne 0x10005550
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10005570
mov ecx, 6
lea eax, [ebp - 0x20c]
mov esi, str.AirlibClientLibGame.dat
rep movsd dword es:[edi], dword [esi]
push eax
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x100056c8
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b0f], al
test al, al
jne 0x100055a0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10007d7d
mov esp, ebp
pop ebp
ret
push str.lol.launcher_tencent.exe
push dword [ebp - 0x220]
call fcn.10015106
add esp, 8
test eax, eax
jne 0x100056c8
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x100056c8
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008830
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x100056c8
lea eax, [ebp - 0x108]
push eax
call fcn.1001d84b
lea eax, [ebp - 0x108]
push 0x1001e6e4
push eax
call fcn.10008a10
add esp, 0xc
test eax, eax
je 0x100056c8
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008830
add esp, 0xc
xor ecx, ecx
lea esp, [esp]
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x20d], al
test al, al
jne 0x10005680
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x100056a0
mov ecx, 6
lea eax, [ebp - 0x20c]
mov esi, str.AirlibClientLibGame.dat
rep movsd dword es:[edi], dword [esi]
push eax
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x100056eb
mov eax, dword [ebp - 0x240]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x214]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov edx, dword [ebp - 0x210]
jmp 0x10005175
xor ecx, ecx
lea ecx, [ecx]
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b0f], al
test al, al
jne 0x100056f0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10007d7d
mov esp, ebp
pop ebp
ret