Function at 0x486fe7
Capabilities:
Create directory
Delete file
Get file attributes
Set file attributes

Disassembly:
push 8
mov eax, 0x4d4a8f
call fcn.004cbc30
mov dword [ebp - 0x14], ecx
push dword [ebp + 8]
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_wchar_t_const__
and dword [ebp - 4], 0
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::GetLength_void_const
test eax, eax
lea ecx, [ebp + 8]
jg 0x487027
or dword [ebp - 4], 0xffffffff
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
xor eax, eax
call fcn.004cbd08
ret 8
lea esi, [eax - 1]
push esi
call sym.QQProtectUpd.exe_public:_wchar_t___thiscall_CTXStringW::GetAt_int_const
cmp ax, 0x5c
jne 0x48705c
push esi
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_class_CTXStringW___thiscall_CTXStringW::Left_int_
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call fcn.0044d92a
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ebx, eax
test bl, 0x20
je 0x4870cb
test bl, 1
je 0x48708a
and eax, 0xfffffffe
push eax
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
cmp dword [ebp + 0xc], 0
je 0x4870cb
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
push str.CreateParentDirectory_Fail___s___delete_file
push str.Http
push 2
push str.CHttpResponseDataWriter::CreateParentDirectory
push 0xae
push str.....SourceCommonNetworkHttpHttpResponseDataWriter.cpp
call fcn.00442b40
add esp, 0x1c
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp ebx, 0xffffffff
je 0x4870d5
test bl, 0x10
jne 0x487145
push 0x5c
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::ReverseFind_wchar_t_const
cmp eax, 0xffffffff
lea ecx, [ebp + 8]
je 0x487014
push eax
lea eax, [ebp + 0xc]
push eax
call sym.QQProtectUpd.exe_public:_class_CTXStringW___thiscall_CTXStringW::Left_int_
xor esi, esi
push esi
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 2
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
mov ecx, dword [ebp - 0x14]
push eax
call fcn.00486fe7
push esi
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
jne 0x487140
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
mov eax, esi
jmp 0x48701f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
xor esi, esi
inc esi
jmp 0x48712d