Function at 0x10004bc0
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 0x10004be5
mov ecx, dword [ebp - 0x214]
test ecx, ecx
je 0x10004be5
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 0x10005144
cmp word [ebp - 0x248], 0xd
jne 0x10005144
mov esi, dword [ebp - 0x240]
test esi, esi
je 0x10005144
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 0x10005138
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 0x10005138
push str.client.exe
push dword [ebp - 0x220]
call fcn.10014b76
add esp, 8
test eax, eax
jne 0x10004dd7
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x10005138
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008290
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x10005138
lea eax, [ebp - 0x108]
push eax
call fcn.1001d2ab
lea eax, [ebp - 0x108]
push str._tclsclient.exe
push eax
call fcn.10008470
add esp, 0xc
test eax, eax
je 0x10005138
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008290
add esp, 0xc
xor ecx, ecx
jmp 0x10004d60
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x20d], al
test al, al
jne 0x10004d60
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10004d80
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 0x10005138
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b07], al
test al, al
jne 0x10004db0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100077dd
mov esp, ebp
pop ebp
ret
push str.taslogin.exe
push dword [ebp - 0x220]
call fcn.10014b76
add esp, 8
test eax, eax
jne 0x10004f07
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x10005138
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008290
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x10005138
lea eax, [ebp - 0x108]
push eax
call fcn.1001d2ab
lea eax, [ebp - 0x108]
push str._tcls_tenprotect_taslogin.exe
push eax
call fcn.10008470
add esp, 0xc
test eax, eax
je 0x10005138
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008290
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 0x10004e90
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10004eb0
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 0x10005138
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b07], al
test al, al
jne 0x10004ee0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100077dd
mov esp, ebp
pop ebp
ret
push str.CrossProxy.exe
push dword [ebp - 0x220]
call fcn.10014b76
add esp, 8
test eax, eax
jne 0x10005037
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x10005138
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008290
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x10005138
lea eax, [ebp - 0x108]
push eax
call fcn.1001d2ab
lea eax, [ebp - 0x108]
push str.crosscrossProxy.exe
push eax
call fcn.10008470
add esp, 0xc
test eax, eax
je 0x10005138
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008290
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 0x10004fc0
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10004fe0
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 0x10005138
xor ecx, ecx
mov edi, edi
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b07], al
test al, al
jne 0x10005010
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100077dd
mov esp, ebp
pop ebp
ret
push 0x1001e720
push dword [ebp - 0x220]
call fcn.10014b76
add esp, 8
test eax, eax
jne 0x10005138
push dword [ebp - 0x230]
push eax
push 0x410
call ebx
mov esi, eax
test esi, esi
je 0x10005138
push 0x103
lea eax, [ebp - 0x107]
mov byte [ebp - 0x108], 0
push 0
push eax
call fcn.10008290
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push eax
push 0
push esi
call sub.PSAPI.DLL_GetModuleFileNameExA
test eax, eax
je 0x10005138
lea eax, [ebp - 0x108]
push eax
call fcn.1001d2ab
lea eax, [ebp - 0x108]
push str.lol.launcher_tencent.exe
push eax
call fcn.10008470
add esp, 0xc
test eax, eax
je 0x10005138
push 0x103
mov byte [eax], 0
lea eax, [ebp - 0x20b]
push 0
push eax
mov byte [ebp - 0x20c], 0
call fcn.10008290
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 0x100050f0
lea edi, [ebp - 0x20c]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10005110
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 0x1000515b
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 0x10004be5
xor ecx, ecx
lea ecx, [ecx]
mov al, byte [ebp + ecx - 0x108]
lea ecx, [ecx + 1]
mov byte [ecx + 0x10029b07], al
test al, al
jne 0x10005160
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100077dd
mov esp, ebp
pop ebp
ret