Function at 0x4b9c50
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5138d5
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [0x550144]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x20], ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x10]
call fcn.0044f140
push 1
lea eax, [ebp + 8]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x10]
call fcn.0048c180
push 0x536ac0
push eax
call fcn.0048bff0
add esp, 8
lea ecx, [ebp + 8]
mov bl, al
call fcn.0044c080
test bl, bl
je 0x4b9cc4
push 0x536ac0
lea ecx, [ebp - 0x10]
call fcn.0048c580
push str.QQPCRtp.exe
lea ecx, [ebp - 0x10]
call fcn.0048c580
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov esi, 3
mov ebx, dword [ebp - 0x20]
nop
mov ecx, 0x553028
call fcn.004b84b0
test eax, eax
jne 0x4b9f52
push str.QQPCRtp.exe
call fcn.00490930
add esp, 4
lea ecx, [ebp + 8]
call fcn.00479be0
push 0
push 0
push str.SYSTEMCurrentControlSetServicesQQPCrtp
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call fcn.00479c10
test eax, eax
je 0x4b9f09
lea eax, [ebp - 0x24]
push eax
push str.DeleteFlag
lea ecx, [ebp + 8]
call fcn.00479d20
test eax, eax
je 0x4b9d4b
push str.DeleteFlag
lea ecx, [ebp + 8]
call fcn.00492d40
lea ecx, [ebp - 0x20]
call fcn.0047d1f0
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 2
push eax
push str.ImagePath
lea ecx, [ebp + 8]
call fcn.00479d70
test eax, eax
je 0x4b9f01
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x18]
call fcn.0048d090
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 3
call fcn.0048c250
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
call fcn.0048d090
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call fcn.0048c250
push 0
lea ecx, [ebp - 0x14]
call fcn.0044c0a0
push eax
lea ecx, [ebp - 0x18]
call fcn.0048cc30
cmp eax, 0xffffffff
jne 0x4b9f20
push dword [ebp - 0x18]
push 0x51bd8c
push 0x550bb8
call fcn.0048d880
push dword [ebp - 0x14]
push 0x51bdb8
push 0x550bb8
call fcn.0048d880
push 0x51bdd0
push 0x550bb8
call fcn.0048d880
add esp, 0x20
lea ecx, [ebp - 0x10]
call fcn.0044c0a0
push eax
call edi
test eax, eax
je 0x4b9e1d
push 0
push 0
push 0xffffffffffffffff
push 0x51be18
lea ecx, [ebp - 0x10]
call fcn.0044c0a0
push eax
call fcn.004906b0
add esp, 0x14
push 0
push str.RtpFlag
lea ecx, [ebp + 8]
call fcn.00492cc0
push 0x110
push str.Type
lea ecx, [ebp + 8]
call fcn.00492cc0
push 1
push str.ErrorControl
lea ecx, [ebp + 8]
call fcn.00492cc0
push 2
push str.Start
lea ecx, [ebp + 8]
call fcn.00492cc0
push str.QQPCMgr_RTP_Service
push 0x51ba3c
lea ecx, [ebp + 8]
call fcn.00492cf0
push str.COM_Infrastructure
push str.Group
lea ecx, [ebp + 8]
call fcn.00492cf0
push str.LocalSystem
push str.ObjectName
lea ecx, [ebp + 8]
call fcn.00492cf0
push 0x51be88
push str.Description
lea ecx, [ebp + 8]
call fcn.00492cf0
push 0x5384e0
lea ecx, [ebp - 0x1c]
call fcn.0044f140
lea ecx, [ebx + 4]
mov byte [ebp - 4], 5
call fcn.0044c0a0
push eax
lea ecx, [ebp - 0x1c]
call fcn.0048c580
push str.QQPCRtp.exe___r
lea ecx, [ebp - 0x1c]
call fcn.0048c580
lea ecx, [ebp - 0x1c]
call fcn.0044c0a0
push eax
push str.ImagePath
lea ecx, [ebp + 8]
call fcn.00492cf0
lea ecx, [ebp - 0x1c]
call fcn.0044c080
lea ecx, [ebp - 0x14]
call fcn.0044c080
lea ecx, [ebp - 0x18]
call fcn.0044c080
lea ecx, [ebp - 0x20]
call fcn.0044c080
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0
dec esi
call fcn.00479bf0
test esi, esi
jg 0x4b9ce0
jmp 0x4b9f52
push str.RepairQQPCRtp_RTP
push 0x550bb8
call fcn.0048d880
add esp, 8
lea ecx, [ebp - 0x14]
call fcn.0044c080
lea ecx, [ebp - 0x18]
call fcn.0044c080
lea ecx, [ebp - 0x20]
call fcn.0044c080
lea ecx, [ebp + 8]
call fcn.00479bf0
lea ecx, [ebp - 0x10]
call fcn.0044c080
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4