Function at 0x5408e5
Capabilities:
Check if file exists
Copy file
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c0
push ebx
push esi
push edi
push 0x5e72b8
xor ebx, ebx
mov edi, ecx
push 2
mov dword [ebp - 8], ebx
call fcn.004ede00
push eax
call fcn.004f0230
add esp, 0xc
lea ecx, [ebp - 0xb8]
call fcn.004e8a70
cmp dword [edi + 0x814], ebx
je 0x5409fb
xor esi, esi
lea ecx, [ebp - 0xb8]
lea eax, [edi + 0x804]
push ecx
push eax
call fcn.004e55a0
pop ecx
pop ecx
test eax, eax
je 0x54099d
push 0x208
lea eax, [ebp - 0x2c0]
push 0
push eax
call fcn.00573610
add esp, 0xc
lea eax, [ebp - 0x2c0]
lea ecx, [ebp - 0xb8]
push eax
call fcn.004e5290
push eax
lea ecx, [ebp - 0xb8]
call fcn.004e5280
push eax
call fcn.00456792
lea eax, [edi + 0x81c]
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x54098a
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.00595551
pop ecx
pop ecx
test eax, eax
je 0x5409bb
inc esi
cmp esi, 3
jl 0x540926
mov eax, dword [ebp - 0x60]
mov dword [edi + 0x75c], 0xc
mov dword [edi + 0x760], eax
jmp 0x540c2d
push 0
lea eax, [ebp - 0x20]
push 4
push eax
lea esi, [edi + 0x88]
call fcn.004c08f0
add esp, 0xc
lea ecx, [ebp - 0xb8]
push eax
call fcn.004e5290
push eax
lea ecx, [ebp - 0xb8]
call fcn.004e5280
push eax
mov ecx, esi
call fcn.0055113f
lea ecx, [ebp - 0x20]
call fcn.00403d40
jmp 0x540a01
lea esi, [edi + 0x88]
mov ecx, esi
call fcn.0055108a
and dword [ebp - 8], ebx
mov dword [ebp - 4], eax
xor esi, esi
inc esi
cmp eax, 2
jle 0x540a87
push 0x612d7c
lea ecx, [ebp - 0x20]
call fcn.00408fc4
lea eax, [ebp - 0x20]
or ebx, esi
push eax
push esi
lea ecx, [edi + 0x88]
call fcn.005511df
neg eax
lea ecx, [ebp - 0x20]
sbb esi, esi
and ebx, 0xfffffffe
call fcn.00403d40
neg esi
je 0x540a72
push str.appdata
lea ecx, [ebp - 0x20]
call fcn.00408fc4
lea eax, [ebp - 0x20]
or ebx, 2
push eax
push 2
lea ecx, [edi + 0x88]
call fcn.005511df
test eax, eax
je 0x540a72
xor esi, esi
inc esi
jmp 0x540a74
xor esi, esi
test bl, 2
je 0x540a84
lea ecx, [ebp - 0x20]
and ebx, 0xfffffffd
call fcn.00403d40
mov eax, dword [ebp - 4]
cmp eax, 3
jle 0x540acc
test esi, esi
je 0x540aba
push 0x5e72e0
lea ecx, [ebp - 0x20]
call fcn.00408fc4
lea eax, [ebp - 0x20]
or ebx, 4
push eax
push 3
lea ecx, [edi + 0x88]
call fcn.005511df
test eax, eax
je 0x540aba
xor esi, esi
inc esi
jmp 0x540abc
xor esi, esi
test bl, 4
je 0x540acc
lea ecx, [ebp - 0x20]
and ebx, 0xfffffffb
call fcn.00403d40
test esi, esi
je 0x540be0
push 1
sub esp, 0x18
mov ecx, esp
push str.TxBugReport.exe
call fcn.00408fc4
lea eax, [ebp - 0x50]
push eax
call fcn.00532317
mov ecx, eax
call fcn.00532347
push eax
lea eax, [ebp - 0x38]
push 5
push eax
call fcn.004c0910
add esp, 0x10
lea ecx, [ebp - 0x50]
call fcn.00403d40
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x540b77
push 0x208
lea eax, [ebp - 0x2c0]
push 0
push eax
call fcn.00573610
add esp, 0xc
lea eax, [ebp - 0x2c0]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push str.TxBugReport.exe
lea eax, [ebp - 0x2c0]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
cmp dword [ebp - 0x24], 8
lea ecx, [ebp - 0x2c0]
push 1
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 1
sub esp, 0x18
mov ecx, esp
push str.QQBrowser.exe
call fcn.00408fc4
lea eax, [ebp - 0x50]
push eax
call fcn.00532317
mov ecx, eax
call fcn.00532347
push eax
lea eax, [ebp - 0x20]
push 5
push eax
call fcn.004c0910
add esp, 0x10
lea ecx, [ebp - 0x50]
call fcn.00403d40
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x540bf4
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x20]
call fcn.00403d40
lea ecx, [ebp - 0x38]
call fcn.00403d40
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, 3
jge 0x540c04
mov eax, dword [ebp - 4]
jmp 0x540a0e
lea ecx, [ebp - 0x20]
call fcn.00403d40
lea ecx, [ebp - 0x38]
call fcn.00403d40
push 0x5e72ec
push 2
call fcn.004ede00
push eax
call fcn.004f0230
add esp, 0xc
test esi, esi
jne 0x540c2d
and dword [edi + 0x760], esi
mov dword [edi + 0x75c], 8
lea ecx, [ebp - 0x5c]
call fcn.00410570
lea ecx, [ebp - 0xac]
call fcn.004ea0c0
pop edi
pop esi
pop ebx
leave
ret