Function at 0x515c4c
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 0x5d3790
xor ebx, ebx
mov edi, ecx
push 2
mov dword [ebp - 8], ebx
call fcn.005bb560
push eax
call fcn.005bb420
add esp, 0xc
lea ecx, [ebp - 0xb8]
call fcn.004c4640
cmp dword [edi + 0x814], ebx
je 0x515d62
xor esi, esi
lea ecx, [ebp - 0xb8]
lea eax, [edi + 0x804]
push ecx
push eax
call fcn.005b81d0
pop ecx
pop ecx
test eax, eax
je 0x515d04
push 0x208
lea eax, [ebp - 0x2c0]
push 0
push eax
call fcn.00548bf0
add esp, 0xc
lea eax, [ebp - 0x2c0]
lea ecx, [ebp - 0xb8]
push eax
call fcn.005b9560
push eax
lea ecx, [ebp - 0xb8]
call fcn.005b9590
push eax
call fcn.00456a14
lea eax, [edi + 0x81c]
add esp, 0xc
cmp dword [eax + 0x14], 8
jb 0x515cf1
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.00577501
pop ecx
pop ecx
test eax, eax
je 0x515d22
inc esi
cmp esi, 3
jl 0x515c8d
mov eax, dword [ebp - 0x60]
mov dword [edi + 0x75c], 0xc
mov dword [edi + 0x760], eax
jmp 0x515f94
push 0
lea eax, [ebp - 0x20]
push 4
push eax
lea esi, [edi + 0x88]
call fcn.005ad3a0
add esp, 0xc
lea ecx, [ebp - 0xb8]
push eax
call fcn.005b9560
push eax
lea ecx, [ebp - 0xb8]
call fcn.005b9590
push eax
mov ecx, esi
call fcn.00526657
lea ecx, [ebp - 0x20]
call fcn.00403f80
jmp 0x515d68
lea esi, [edi + 0x88]
mov ecx, esi
call fcn.005265a2
and dword [ebp - 8], ebx
mov dword [ebp - 4], eax
xor esi, esi
inc esi
cmp eax, 2
jle 0x515dee
push 0x600508
lea ecx, [ebp - 0x20]
call fcn.0040921d
lea eax, [ebp - 0x20]
or ebx, esi
push eax
push esi
lea ecx, [edi + 0x88]
call fcn.005266f7
neg eax
lea ecx, [ebp - 0x20]
sbb esi, esi
and ebx, 0xfffffffe
call fcn.00403f80
neg esi
je 0x515dd9
push str.appdata
lea ecx, [ebp - 0x20]
call fcn.0040921d
lea eax, [ebp - 0x20]
or ebx, 2
push eax
push 2
lea ecx, [edi + 0x88]
call fcn.005266f7
test eax, eax
je 0x515dd9
xor esi, esi
inc esi
jmp 0x515ddb
xor esi, esi
test bl, 2
je 0x515deb
lea ecx, [ebp - 0x20]
and ebx, 0xfffffffd
call fcn.00403f80
mov eax, dword [ebp - 4]
cmp eax, 3
jle 0x515e33
test esi, esi
je 0x515e21
push 0x5d37b8
lea ecx, [ebp - 0x20]
call fcn.0040921d
lea eax, [ebp - 0x20]
or ebx, 4
push eax
push 3
lea ecx, [edi + 0x88]
call fcn.005266f7
test eax, eax
je 0x515e21
xor esi, esi
inc esi
jmp 0x515e23
xor esi, esi
test bl, 4
je 0x515e33
lea ecx, [ebp - 0x20]
and ebx, 0xfffffffb
call fcn.00403f80
test esi, esi
je 0x515f47
push 1
sub esp, 0x18
mov ecx, esp
push str.TxBugReport.exe
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
call fcn.00507881
mov ecx, eax
call fcn.005078b1
push eax
lea eax, [ebp - 0x38]
push 5
push eax
call fcn.005ad360
add esp, 0x10
lea ecx, [ebp - 0x50]
call fcn.00403f80
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 0x515ede
push 0x208
lea eax, [ebp - 0x2c0]
push 0
push eax
call fcn.00548bf0
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.0040921d
lea eax, [ebp - 0x50]
push eax
call fcn.00507881
mov ecx, eax
call fcn.005078b1
push eax
lea eax, [ebp - 0x20]
push 5
push eax
call fcn.005ad360
add esp, 0x10
lea ecx, [ebp - 0x50]
call fcn.00403f80
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 0x515f5b
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x20]
call fcn.00403f80
lea ecx, [ebp - 0x38]
call fcn.00403f80
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, 3
jge 0x515f6b
mov eax, dword [ebp - 4]
jmp 0x515d75
lea ecx, [ebp - 0x20]
call fcn.00403f80
lea ecx, [ebp - 0x38]
call fcn.00403f80
push 0x5d37c4
push 2
call fcn.005bb560
push eax
call fcn.005bb420
add esp, 0xc
test esi, esi
jne 0x515f94
and dword [edi + 0x760], esi
mov dword [edi + 0x75c], 8
lea ecx, [ebp - 0x5c]
call fcn.004107c9
lea ecx, [ebp - 0xac]
call fcn.004c6450
pop edi
pop esi
pop ebx
leave
ret