Function at 0x432820
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4cd647
mov eax, dword fs:[0]
push eax
sub esp, 0x534
mov eax, dword [0x528f34]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov ebx, ecx
xor edi, edi
lea ecx, [ebp - 0x42c]
mov dword [ebp - 0x4ac], ebx
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x44c], edi
call fcn.0042d310
lea ecx, [ebp - 0x43c]
push edi
push ecx
mov dword [ebp - 4], edi
call fcn.0043bfc0
lea edx, [ebp - 0x4c8]
push edi
push edx
mov byte [ebp - 4], 1
call fcn.0043be30
push 0x4dd7c0
push eax
lea eax, [ebp - 0x444]
push eax
mov byte [ebp - 4], 2
call sym.QQProtectUpd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___wchar_t_const__
add esp, 0x1c
lea ecx, [ebp - 0x4c8]
mov byte [ebp - 4], 4
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x444]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXStringW::GetBuffer_void_
push eax
lea ecx, [ebp - 0x42c]
call fcn.0042eef0
push 0xffffffffffffffff
lea ecx, [ebp - 0x444]
mov esi, eax
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::ReleaseBuffer_int_
cmp esi, edi
je 0x43296b
lea ecx, [ebp - 0x4b0]
push ecx
push str.FlashDriver
lea ecx, [ebp - 0x42c]
mov dword [ebp - 0x4b0], edi
call fcn.0042e420
mov edx, dword [ebp - 0x4b0]
mov dword [ebx + 0x3c], edx
mov dword [ebp - 0x448], edi
lea eax, [ebp - 0x448]
push eax
lea ecx, [ebp - 0x42c]
mov byte [ebp - 4], 5
call fcn.0042e240
mov eax, dword [ebp - 0x448]
cmp eax, edi
je 0x43296b
lea edx, [ebp - 0x4a4]
mov dword [ebp - 0x4a4], edi
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x60]
call eax
mov eax, dword [ebp - 0x4a4]
cmp eax, 1
jae 0x4329a2
mov eax, dword [ebp - 0x448]
cmp eax, edi
mov byte [ebp - 4], 4
je 0x43296b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
cmp eax, edi
lea ecx, [eax + eax*2]
mov dword [ebx + 0x30], ecx
mov dword [ebp - 0x46c], edi
jbe 0x433516
mov bl, 0xd
jmp 0x4329c0
mov dword [ebp - 0x430], edi
mov eax, dword [ebp - 0x448]
mov edx, dword [eax]
mov edx, dword [edx + 0x1ac]
lea ecx, [ebp - 0x430]
push ecx
mov ecx, dword [ebp - 0x46c]
push ecx
push eax
mov byte [ebp - 4], 6
call edx
cmp dword [ebp - 0x430], edi
je 0x43358e
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
mov edi, dword [ebp - 0x430]
lea eax, [ebp - 0x488]
push 0x4dd880
push eax
mov byte [ebp - 4], bl
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0xe
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov ecx, dword [esi]
push eax
push edi
call ecx
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
lea edx, [ebp - 0x498]
push 0x4dd89c
push edx
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x460]
mov byte [ebp - 4], 0xf
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
mov eax, dword [esi]
push edi
call eax
lea ecx, [ebp - 0x498]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
lea ecx, [ebp - 0x480]
push str.DesPath
push ecx
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x464]
mov byte [ebp - 4], 0x10
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov edx, dword [esi]
push eax
push edi
call edx
lea ecx, [ebp - 0x480]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
lea eax, [ebp - 0x4c4]
push str.RelativePath
push eax
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x468]
mov byte [ebp - 4], 0x11
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov ecx, dword [esi]
push eax
push edi
call ecx
lea ecx, [ebp - 0x4c4]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
lea edx, [ebp - 0x4cc]
push str.OSType
push edx
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 0x12
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
mov eax, dword [esi]
push edi
call eax
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
lea ecx, [ebp - 0x4d4]
push str.OSBit
push ecx
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x45c]
mov byte [ebp - 4], 0x13
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov edx, dword [esi]
push eax
push edi
call edx
lea ecx, [ebp - 0x4d4]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x430]
push str.ReportId
lea eax, [ebp - 0x4f0]
push eax
call fcn.0042ced0
add esp, 8
mov dword [ebp - 0x424], eax
mov esi, dword [edi]
lea ecx, [ebp - 0x470]
mov byte [ebp - 4], 0x14
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov ecx, dword [esi]
push eax
push edi
call ecx
lea ecx, [ebp - 0x4f0]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
xor esi, esi
lea edx, [ebp - 0x4bc]
push edx
lea ecx, [ebp - 0x45c]
mov dword [ebp - 0x4b4], esi
mov dword [ebp - 0x4bc], esi
mov dword [ebp - 0x4b8], esi
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
call sym.QQProtectUpd.exe_bool___cdecl_Util::Convert::StringToDWordW_wchar_t_const___unsigned_long_int__
add esp, 8
lea eax, [ebp - 0x4b4]
push eax
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
call sym.QQProtectUpd.exe_bool___cdecl_Util::Convert::StringToDWordW_wchar_t_const___unsigned_long_int__
add esp, 8
lea ecx, [ebp - 0x4b8]
push ecx
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
call sym.QQProtectUpd.exe_bool___cdecl_Util::Convert::StringToDWordW_wchar_t_const___unsigned_long_int__
mov edx, dword [ebp - 0x4b4]
mov eax, dword [ebp - 0x4bc]
mov ecx, dword [ebp - 0x4ac]
add esp, 8
push edx
push eax
call fcn.0042fe10
test eax, eax
jne 0x432d50
push ecx
lea edx, [ebp - 0x434]
mov ecx, esp
mov dword [ebp - 0x424], esp
push edx
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_class_CTXBSTR_const__
push str.file_:__s_is_not_Match_Curren_OS
push str.QPUPDATE
push 2
push str.CCopyFileLogic::OnValidateFileHash
push 0x29a
push str.F:_svn_codeQPUpd_v137SourceLogicCopyFileLogic.cpp
call fcn.004300d0
add esp, 0x1c
jmp 0x433496
lea eax, [ebp - 0x434]
push eax
lea ecx, [ebp - 0x4e4]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
mov edi, eax
push 0x4de3a0
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0x15
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_wchar_t_const__
lea ecx, [ebp - 0x43c]
push ecx
push eax
lea edx, [ebp - 0x4f4]
push edx
mov byte [ebp - 4], 0x16
call sym.QQProtectUpd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___class_CTXStringW_const__
push edi
push eax
lea eax, [ebp - 0x484]
push eax
mov byte [ebp - 4], 0x17
call sym.QQProtectUpd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___class_CTXStringW_const__
add esp, 0x18
lea ecx, [ebp - 0x4f4]
mov byte [ebp - 4], 0x19
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0x1a
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x4e4]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1d
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::Empty_void_
lea ecx, [ebp - 0x454]
push ecx
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
lea ecx, [ebp - 0x42c]
call fcn.0042e790
lea ecx, [ebp - 0x454]
call sym.QQProtectUpd.exe_public:_bool___thiscall_CTXStringW::IsEmpty_void_const
test al, al
jne 0x4335db
push 0x206
lea edx, [ebp - 0x216]
push esi
push edx
mov word [ebp - 0x218], si
call sub.MSVCR80.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x454]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXStringW::GetBSTR_void_const
push eax
lea eax, [ebp - 0x218]
push 0x104
push eax
call dword [sym.imp.MSVCR80.dll_wcscpy_s]
add esp, 0xc
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov edi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push eax
lea ecx, [ebp - 0x218]
push ecx
call edi
lea edx, [ebp - 0x434]
push edx
lea ecx, [ebp - 0x478]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
lea eax, [ebp - 0x434]
push eax
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0x1e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_wchar_t__
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x20
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::GetLength_void_const
cmp eax, 9
jle 0x432f39
push 8
lea edx, [ebp - 0x4e8]
push edx
lea ecx, [ebp - 0x47c]
call sym.QQProtectUpd.exe_public:_class_CTXStringW___thiscall_CTXStringW::Right_int_
or dword [ebp - 0x44c], 1
push str.drivers
mov ecx, eax
mov byte [ebp - 4], 0x21
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
je 0x432f30
push 9
lea eax, [ebp - 0x4d0]
push eax
lea ecx, [ebp - 0x47c]
call sym.QQProtectUpd.exe_public:_class_CTXStringW___thiscall_CTXStringW::Right_int_
or dword [ebp - 0x44c], 2
push str.drivers_
mov ecx, eax
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
jne 0x432f39
mov byte [ebp - 0x425], 1
jmp 0x432f40
mov byte [ebp - 0x425], 0
test byte [ebp - 0x44c], 2
je 0x432f5b
and dword [ebp - 0x44c], 0xfffffffd
lea ecx, [ebp - 0x4d0]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
test byte [ebp - 0x44c], 1
mov dword [ebp - 4], 0x20
je 0x432f7d
and dword [ebp - 0x44c], 0xfffffffe
lea ecx, [ebp - 0x4e8]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
cmp byte [ebp - 0x425], 0
je 0x432fe0
push str.qqprotect_ev.sys
lea ecx, [ebp - 0x478]
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
jne 0x432fa1
push str.QQProtect.sys
jmp 0x432fd5
push str.qqfrmmgr_ev.sys
lea ecx, [ebp - 0x478]
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
jne 0x432fbc
push str.QQFrmMgr.sys
jmp 0x432fd5
push str.qqprotectx64_ev.sys
lea ecx, [ebp - 0x478]
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
jne 0x432fe0
push str.QQProtectX64.sys
lea ecx, [ebp - 0x474]
call sym.QQProtectUpd.exe_public:_class_CTXStringW____thiscall_CTXStringW::operator_wchar_t__
lea ecx, [ebp - 0x474]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXStringW::GetBSTR_void_const
push eax
lea ecx, [ebp - 0x218]
push ecx
call edi
lea edx, [ebp - 0x218]
push edx
lea ecx, [ebp - 0x450]
call sym.QQProtectUpd.exe_public:_class_CTXStringW____thiscall_CTXStringW::operator_wchar_t__
lea eax, [ebp - 0x434]
push eax
lea ecx, [ebp - 0x4d8]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
push str.tssafeedit.dat
mov ecx, eax
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
test eax, eax
lea ecx, [ebp - 0x4d8]
sete byte [ebp - 0x425]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
cmp byte [ebp - 0x425], 0
je 0x4332cc
lea ecx, [ebp - 0x440]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 0x22
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x434]
push ecx
lea ecx, [ebp - 0x4e0]
mov byte [ebp - 4], 0x23
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
push eax
lea edx, [ebp - 0x43c]
push edx
lea eax, [ebp - 0x4ec]
push eax
mov byte [ebp - 4], 0x24
call sym.QQProtectUpd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___class_CTXStringW_const__
lea ecx, [ebp - 0x440]
push ecx
push eax
mov byte [ebp - 4], 0x25
call fcn.0043b780
add esp, 0x14
lea ecx, [ebp - 0x4ec]
mov byte [ebp - 4], 0x24
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x4e0]
mov byte [ebp - 4], 0x23
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea edx, [ebp - 0x438]
push edx
lea eax, [ebp - 0x450]
push eax
call fcn.0043b780
mov ecx, dword [ebp - 0x438]
add esp, 8
push ecx
push ecx
lea edx, [ebp - 0x440]
mov ecx, esp
mov dword [ebp - 0x424], esp
push edx
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXStringW_const__
push str.strSrcVer___s_strDesVer___s
push str.QPUPDATE
push 2
push str.CCopyFileLogic::OnValidateFileHash
push 0x2ca
push str.F:_svn_codeQPUpd_v137SourceLogicCopyFileLogic.cpp
call fcn.0042d2a0
lea eax, [ebp - 0x440]
push eax
lea ecx, [ebp - 0x438]
push ecx
call sym.QQProtectUpd.exe_bool___cdecl_operator__class_CTXStringW_const___class_CTXStringW_const__
add esp, 0x28
test al, al
je 0x4332ae
mov dword [ebp - 0x424], str.mmk__
mov dword [ebp - 0x500], str.F:_svn_codeQPUpd_v137SourceLogicCopyFileLogic.cpp
mov dword [ebp - 0x4fc], str.CCopyFileLogic::OnValidateFileHash
mov dword [ebp - 0x504], esi
mov dword [ebp - 0x4f8], esi
mov dword [ebp - 0x52c], 0x2cd
mov dword [ebp - 0x528], esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [ebp - 0x524], eax
mov dword [ebp - 0x530], 2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea edx, [ebp - 0x514]
push edx
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x51c], esi
call dword [sym.imp.MSVCR80.dll__time64]
lea eax, [ebp - 0x424]
push eax
push 0x4dd0ec
lea ecx, [ebp - 0x534]
push str.QPUPDATE
push ecx
mov dword [ebp - 0x50c], esi
mov dword [ebp - 0x508], esi
call sym.QQProtectUpd.exe_void___cdecl_TXLog_DoTXLogVW_struct_tagLogObj___wchar_t_const___wchar_t_const___char__
add esp, 0x14
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 0x22
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x20
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0x1e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x1d
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x430]
cmp eax, esi
mov byte [ebp - 4], 5
je 0x4334f9
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x4334f9
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 0x22
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x20
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
mov ecx, dword [ebp - 0x450]
push ecx
push ecx
lea edx, [ebp - 0x434]
mov ecx, esp
mov dword [ebp - 0x424], esp
push edx
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
push 0x4de250
push str.QPUPDATE
push 3
push str.CCopyFileLogic::OnValidateFileHash
push 0x2d2
push str.F:_svn_codeQPUpd_v137SourceLogicCopyFileLogic.cpp
call fcn.0042d2a0
add esp, 0x20
push 0x10
lea ecx, [ebp - 0x490]
call fcn.004302e0
lea eax, [ebp - 0x49c]
push eax
lea ecx, [ebp - 0x490]
push ecx
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x49c], esi
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call sym.QQProtectUpd.exe_int___cdecl_Util::FS::GetFileHash_wchar_t_const___class_CTXBuffer___unsigned_long_int__
add esp, 0xc
test eax, eax
je 0x4336b7
lea edx, [ebp - 0x490]
push edx
lea eax, [ebp - 0x4a8]
push eax
call sym.QQProtectUpd.exe_class_CTXStringW___cdecl_Util::Encode::Encode16_class_CTXBuffer_const__
add esp, 8
mov edi, eax
lea ecx, [ebp - 0x460]
push ecx
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 4], 0x27
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
mov ecx, edi
mov dword [ebp - 0x424], eax
call sym.QQProtectUpd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
mov ecx, dword [ebp - 0x424]
push eax
call sym.QQProtectUpd.exe_public:_int___thiscall_CTXStringW::CompareNoCase_wchar_t_const__const
lea ecx, [ebp - 0x4a0]
mov edi, eax
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x26
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
cmp edi, esi
jne 0x4337cf
mov edx, dword [ebp - 0x4b8]
add edx, 0x64
push edx
push ecx
lea eax, [ebp - 0x450]
mov ecx, esp
mov dword [ebp - 0x424], esp
push eax
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXStringW_const__
push ecx
lea edx, [ebp - 0x434]
mov ecx, esp
mov dword [ebp - 0x4dc], esp
push edx
mov byte [ebp - 4], 0x28
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
lea ecx, [ebp - 0x540]
mov byte [ebp - 4], 0x26
call fcn.0042fb50
mov ecx, dword [ebp - 0x48c]
push eax
mov byte [ebp - 4], 0x29
call fcn.004324d0
lea ecx, [ebp - 0x540]
mov byte [ebp - 4], 0x26
call fcn.004255b0
mov ecx, dword [ebp - 0x4ac]
add dword [ecx + 0x34], 1
push 1
call fcn.0042fd90
lea ecx, [ebp - 0x490]
mov byte [ebp - 4], 0x20
call fcn.0042cf00
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0x1e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x1d
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x430]
cmp eax, esi
mov byte [ebp - 4], 5
je 0x4334f9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x46c]
add eax, 1
xor edi, edi
cmp eax, dword [ebp - 0x4a4]
mov dword [ebp - 0x46c], eax
jb 0x4329c0
mov ecx, dword [ebp - 0x48c]
mov eax, dword [ecx + 4]
cmp eax, edi
je 0x433541
mov ecx, dword [ecx + 8]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jae 0x4338e7
mov eax, dword [ebp - 0x448]
cmp eax, edi
mov byte [ebp - 4], 4
je 0x433557
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
mov eax, dword [ebp - 0x448]
cmp eax, edi
mov byte [ebp - 4], 4
je 0x4335a4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x430]
cmp eax, esi
mov byte [ebp - 4], 5
je 0x43366a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x448]
cmp eax, esi
mov byte [ebp - 4], 4
je 0x433680
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
lea ecx, [ebp - 0x490]
mov byte [ebp - 4], 0x20
call fcn.0042cf00
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0x1e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x1d
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x430]
cmp eax, esi
mov byte [ebp - 4], 5
je 0x433782
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x448]
cmp eax, esi
mov byte [ebp - 4], 4
je 0x433798
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
lea ecx, [ebp - 0x490]
mov byte [ebp - 4], 0x20
call fcn.0042cf00
lea ecx, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0x1e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x1d
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x454]
mov byte [ebp - 4], 0x1c
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x1b
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], bl
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x470]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x45c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x458]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x468]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x464]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x460]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x434]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x430]
cmp eax, esi
mov byte [ebp - 4], 5
je 0x43389a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x448]
cmp eax, esi
mov byte [ebp - 4], 4
je 0x4338b0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
xor eax, eax
jmp 0x433c7c
mov dword [ebp - 0x494], edi
lea eax, [ebp - 0x494]
push eax
lea ecx, [ebp - 0x42c]
mov byte [ebp - 4], 0x2a
call fcn.0042e060
mov eax, dword [ebp - 0x494]
cmp eax, edi
je 0x433c21
lea edx, [ebp - 0x424]
mov dword [ebp - 0x424], edi
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x60]
call eax
xor esi, esi
cmp dword [ebp - 0x424], edi
mov dword [ebp - 0x48c], esi
jbe 0x433c1b
lea ebx, [ebx]
mov dword [ebp - 0x438], edi
mov eax, dword [ebp - 0x494]
mov ecx, dword [eax]
lea edx, [ebp - 0x438]
push edx
push esi
push eax
mov eax, dword [ecx + 0x1ac]
mov byte [ebp - 4], 0x2b
call eax
mov eax, dword [ebp - 0x438]
cmp eax, edi
je 0x433bf6
lea ecx, [ebp - 0x46c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x488]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
lea ecx, [ebp - 0x498]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::constructor_void_
mov edi, dword [ebp - 0x438]
lea ecx, [ebp - 0x4a8]
push 0x4dd880
push ecx
mov byte [ebp - 4], 0x2e
call fcn.0042ced0
add esp, 8
mov ebx, eax
mov esi, dword [edi]
lea ecx, [ebp - 0x46c]
mov byte [ebp - 4], 0x2f
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
push eax
mov ecx, ebx
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov edx, dword [esi]
push eax
push edi
call edx
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x2e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x438]
lea eax, [ebp - 0x4a0]
push str.DesPath
push eax
call fcn.0042ced0
add esp, 8
mov ebx, eax
mov esi, dword [edi]
lea ecx, [ebp - 0x488]
mov byte [ebp - 4], 0x30
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
push eax
mov ecx, ebx
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov ecx, dword [esi]
push eax
push edi
call ecx
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 4], 0x2e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov edi, dword [ebp - 0x438]
lea edx, [ebp - 0x49c]
push str.RelativePath
push edx
call fcn.0042ced0
add esp, 8
mov ebx, eax
mov esi, dword [edi]
lea ecx, [ebp - 0x498]
mov byte [ebp - 4], 0x31
add esi, 0x40
call sym.QQProtectUpd.exe_public:_wchar_t_____thiscall_CTXBSTR::operator_void_
push eax
mov ecx, ebx
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
mov eax, dword [esi]
push edi
call eax
lea ecx, [ebp - 0x49c]
mov byte [ebp - 4], 0x2e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x480]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x32
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringA::constructor_void_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x33
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::Empty_void_
lea ecx, [ebp - 0x440]
push ecx
lea ecx, [ebp - 0x498]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
lea ecx, [ebp - 0x42c]
call fcn.0042e790
lea ecx, [ebp - 0x440]
call sym.QQProtectUpd.exe_public:_bool___thiscall_CTXStringW::IsEmpty_void_const
test al, al
jne 0x433ba9
push 0x206
lea edx, [ebp - 0x41e]
push 0
push edx
mov word [ebp - 0x420], 0
call sub.MSVCR80.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x440]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXStringW::GetBSTR_void_const
push eax
lea eax, [ebp - 0x420]
push 0x104
push eax
call dword [sym.imp.MSVCR80.dll_wcscpy_s]
add esp, 0xc
lea ecx, [ebp - 0x488]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push eax
lea ecx, [ebp - 0x420]
push ecx
call esi
lea ecx, [ebp - 0x46c]
call sym.QQProtectUpd.exe_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const
push eax
lea edx, [ebp - 0x420]
push edx
call esi
lea eax, [ebp - 0x420]
push eax
lea ecx, [ebp - 0x480]
call sym.QQProtectUpd.exe_public:_class_CTXStringW____thiscall_CTXStringW::operator_wchar_t__
mov ecx, dword [ebp - 0x480]
push ecx
push ecx
lea edx, [ebp - 0x46c]
mov ecx, esp
mov dword [ebp - 0x4dc], esp
push edx
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::constructor_class_CTXBSTR_const__
push str.DelFile__s
push str.QPUPDATE
push 3
push str.CCopyFileLogic::OnValidateFileHash
push 0x312
push str.F:_svn_codeQPUpd_v137SourceLogicCopyFileLogic.cpp
call fcn.0042d2a0
add esp, 0x20
lea eax, [ebp - 0x480]
push eax
mov ecx, 0x52922c
call fcn.00432450
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0x32
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x480]
mov byte [ebp - 4], 0x2e
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x498]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x488]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
lea ecx, [ebp - 0x46c]
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXBSTR::destructor_void_
mov eax, dword [ebp - 0x438]
mov esi, dword [ebp - 0x48c]
xor edi, edi
cmp eax, edi
mov byte [ebp - 4], 0x2a
je 0x433c06
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
add esi, 1
cmp esi, dword [ebp - 0x424]
mov dword [ebp - 0x48c], esi
jb 0x433940
mov eax, dword [ebp - 0x494]
cmp eax, edi
mov byte [ebp - 4], 5
je 0x433c31
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x448]
cmp eax, edi
mov byte [ebp - 4], 4
je 0x433c47
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x444]
mov byte [ebp - 4], 1
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 0
call sym.QQProtectUpd.exe_public:_void___thiscall_CTXStringW::destructor_void_
lea ecx, [ebp - 0x42c]
mov dword [ebp - 4], 0xffffffff
call fcn.004344c0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004cb642
mov esp, ebp
pop ebp
ret 4