Function at 0x41b0f0
Capabilities:
Check if file exists
Copy file
Delete file
Get file attributes

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b9b5c
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x130
mov eax, dword [0x6441a4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x84], edi
sub esp, 0x10
xor esi, esi
mov eax, esp
mov dword [ebp - 0xb8], esi
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov dword [ebp - 0xd0], esi
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
lea ecx, [esi + 2]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.startUpdate
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x100
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x70
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x23c], eax
mov eax, dword [ebx + 8]
mov dword [edi + 0x22c], eax
add edi, 0x19c
cmp dword [edi], esi
jne 0x41b234
mov eax, dword [ebp - 0x84]
lea edx, [ebp - 0xc4]
mov dword [ebp - 0xcc], eax
lea ecx, [ebp - 0xc0]
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xc4], 0x41e740
push eax
call fcn.00421240
add esp, 4
cmp edi, eax
je 0x41b216
mov ecx, dword [eax]
mov dword [eax], esi
mov eax, dword [edi]
mov dword [edi], ecx
test eax, eax
je 0x41b216
cmp dword [eax + 4], esi
jne 0x41ced2
push 8
push eax
call fcn.004ce396
add esp, 8
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x41b234
cmp dword [eax + 4], esi
jne 0x41ced2
push 8
push eax
call fcn.004ce396
add esp, 8
mov edi, dword [ebp - 0x84]
cmp byte [edi + 0x1a1], 0
jne 0x41b251
push str.UpdateInfo_is_empty
push 7
mov ecx, edi
jmp 0x41cead
mov eax, dword [edi + 0xb8]
mov ecx, dword [edi]
mov edx, dword [edi + 0x7c]
mov dword [edi + 0x1cc], eax
lea eax, [edi + 0xc0]
mov dword [edi + 0x1b4], ecx
mov dword [edi + 0x1c8], edx
mov dword [ebp - 0xc0], eax
cmp dword [eax + 4], esi
jg 0x41b323
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.wechatInstallPath_is_empty.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x117
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x5c
mov byte [edi + 0x1a4], 1
mov ecx, esp
push 0xffffffffffffffff
push str.NeedUpdateType
mov dword [ecx], esi
mov dword [ecx + 4], esi
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], esi
mov dword [ecx + 0x10], esi
call fcn.00406c40
mov ecx, 1
call fcn.004326f0
add esp, 0x14
call fcn.0041f870
push str.wechatInstallPath_is_empty
push 7
mov ecx, edi
jmp 0x41cead
add edi, 0x58
cmp dword [edi + 4], esi
jg 0x41b335
push str.Component_xml_is_empty
jmp 0x41cea5
mov eax, dword [ebp - 0x84]
sub esp, 0x10
mov esi, dword [ebp - 0x84]
mov eax, dword [eax + 0x80]
mov dword [esi + 0x1ac], eax
mov eax, esi
mov dword [eax + 0x224], ecx
mov dword [eax + 0x228], edx
mov eax, esp
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
mov ecx, esp
push edx
movups xmmword [eax], xmm0
call fcn.004197f0
sub esp, 0x10
mov eax, esi
mov ecx, esp
push dword [eax + 0x224]
call fcn.004197f0
push str.patchVersion:__x__oldVersion:__x
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x128
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov ecx, 2
call fcn.00403890
add esp, 0x5c
mov ecx, esp
push edi
call fcn.00406930
mov ecx, esi
call fcn.0041f9a0
mov esi, dword [ebp - 0xd0]
test al, al
je 0x41ce36
mov eax, dword [ebp - 0x84]
cmp dword [eax + 0x160], 0
je 0x41ce36
push dword [ebp - 0xc0]
lea ecx, [ebp - 0xb4]
call fcn.00406930
mov eax, dword [ebp - 0x84]
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0
mov edx, dword [eax + 0x7c]
call fcn.00419b20
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406930
push 0x6294f0
lea ecx, [ebp - 0x9c]
call fcn.00406cf0
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x34]
push eax
call fcn.00406cf0
mov edi, dword [ebp - 0x9c]
test edi, edi
je 0x41b485
cmp word [edi], 0
je 0x41b485
push edi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or esi, 1
cmp eax, 0xffffffff
je 0x41b488
shr eax, 4
test al, 1
je 0x41b488
lea eax, [ebp - 0x9c]
jmp 0x41b48e
or esi, 1
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x10c]
call fcn.00406930
test edi, edi
je 0x41b4a7
push edi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x90]
test eax, eax
je 0x41b4ba
push eax
call fcn.004d2e13
add esp, 4
lea ecx, [ebp - 0x50]
call fcn.00419d20
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41b4d5
push eax
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x41b4e8
push eax
call fcn.004d2e13
add esp, 4
mov ecx, dword [ebp - 0x84]
mov edi, dword [ebp - 0x10c]
add ecx, 0x1d4
mov dword [ebp - 0xc8], ecx
test edi, edi
je 0x41b50c
cmp word [edi], 0
mov eax, edi
jne 0x41b511
mov eax, 0x628fa4
push dword [ebp - 0x108]
push eax
call fcn.00406c40
test edi, edi
je 0x41b52a
push edi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x41b53d
push eax
call fcn.004d2e13
add esp, 4
push dword [ebp - 0xc0]
lea ecx, [ebp - 0xb4]
call fcn.00406930
mov edi, dword [ebp - 0x84]
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 1
mov edx, dword [edi]
call fcn.00419b20
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406930
or esi, 2
lea ecx, [ebp - 0x9c]
push 0x6294f0
mov dword [ebp - 0xb8], esi
call fcn.00406cf0
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x34]
push eax
call fcn.00406cf0
lea ecx, [ebp - 0x50]
call fcn.00419d20
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41b5c2
push eax
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x41b5d5
push eax
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x9c]
lea ecx, [edi + 0x1e8]
mov dword [ebp - 0xc4], ecx
test eax, eax
je 0x41b5f1
cmp word [eax], 0
jne 0x41b5f6
mov eax, 0x628fa4
push dword [ebp - 0x98]
push eax
call fcn.00406c40
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41b61f
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41b646
push eax
call fcn.004d2e13
add esp, 4
lea ecx, [ebp - 0x9c]
mov dword [ebp - 4], 2
call fcn.0042e9f0
push str.patch_
lea ecx, [ebp - 0x9c]
or esi, 8
call fcn.00406cf0
or esi, 4
lea ecx, [ebp - 0x9c]
push 0x6294f0
mov dword [ebp - 0xb8], esi
call fcn.00406cf0
mov edx, dword [edi]
lea ecx, [ebp - 0x50]
call fcn.00419b20
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x9c]
cmovae eax, dword [ebp - 0x34]
push eax
call fcn.00406cf0
lea ecx, [ebp - 0x50]
call fcn.00419d20
mov eax, dword [ebp - 0x9c]
lea ecx, [edi + 0x1fc]
mov dword [ebp - 0xcc], ecx
test eax, eax
je 0x41b6c9
cmp word [eax], 0
jne 0x41b6ce
mov eax, 0x628fa4
push dword [ebp - 0x98]
push eax
call fcn.00406c40
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41b6fe
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41b725
push eax
call fcn.004d2e13
add esp, 4
mov eax, dword [edi + 0x1e8]
lea esi, [edi + 0x210]
mov dword [ebp - 0xb8], esi
test eax, eax
je 0x41b741
cmp word [eax], 0
jne 0x41b746
mov eax, 0x628fa4
push dword [edi + 0x1ec]
mov ecx, esi
push eax
call fcn.00406c40
push str._tmp
mov ecx, esi
call fcn.00406cf0
push ecx
lea esi, [edi + 0x1e8]
mov ecx, esi
call fcn.00407000
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, eax
mov ecx, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push ecx
lea ecx, [edi + 0x1d4]
mov byte [eax], 2
mov dword [eax + 8], edx
call fcn.00407000
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov ecx, esp
push str.m_oldVersionDir:_s__m_newVersionDir_s
push str.UpdateMgr
mov byte [ecx], 2
mov dword [ecx + 8], eax
mov ecx, 2
push str.UpdateMgr::startUpdate
push 0x137
call fcn.00403890
mov eax, dword [esi]
add esp, 0x70
test eax, eax
je 0x41b93a
cmp word [eax], 0
je 0x41b93a
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41b93a
shr eax, 4
and al, 1
je 0x41b93a
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.new_version_dir_exist.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x13b
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x5c
mov ecx, esp
push esi
call fcn.00406930
mov ecx, edi
call fcn.00420190
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
test al, al
mov ecx, 2
mov eax, esp
movups xmmword [eax], xmm0
je 0x41b8e7
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.verify_new_version_dir_success.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x13f
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x70
mov ecx, edi
call fcn.0041dac0
jmp 0x41ceb2
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.verify_new_version_dir_faild._delete_dir.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x143
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x6c
mov edx, 3
mov ecx, esi
call fcn.00430ce0
add esp, 4
push 0
push 0
push 0x467
push dword [edi + 0x22c]
call dword [sym.imp.USER32.dll_PostMessageW]
push 0xffffffffffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x70], 0
push str.andromeda.dll
lea ecx, [ebp - 0x80]
movups xmmword [ebp - 0x80], xmm0
call fcn.00406c40
push 0xffffffffffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x5c], 0
push str.VoipEngine.dll
lea ecx, [ebp - 0x6c]
movups xmmword [ebp - 0x6c], xmm0
call fcn.00406c40
push 0xffffffffffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
push str.libFFmpeg.dll
lea ecx, [ebp - 0x58]
movups xmmword [ebp - 0x58], xmm0
call fcn.00406c40
push 0xffffffffffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
push str.ConfSdk.dll
lea ecx, [ebp - 0x44]
movups xmmword [ebp - 0x44], xmm0
call fcn.00406c40
push 0xffffffffffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push str.confsdk.dll
lea ecx, [ebp - 0x30]
movups xmmword [ebp - 0x30], xmm0
call fcn.00406c40
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 3
push ecx
lea eax, [ebp - 0x1c]
push eax
push ecx
lea ecx, [ebp - 0x118]
call fcn.00420e50
push 0x406bf0
push 5
push 0x14
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 5
push eax
call fcn.004ce602
sub esp, 0x14
lea eax, [edi + 0xc0]
mov ecx, esp
mov dword [ebp - 0x88], esp
push eax
call fcn.00406930
sub esp, 0xc
mov byte [ebp - 4], 6
mov edi, esp
mov dword [ebp - 0xa0], edi
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x118]
mov dword [ebp - 0xd0], eax
cmp esi, eax
je 0x41bac1
mov ecx, eax
mov eax, 0x66666667
sub ecx, esi
imul ecx
mov ecx, edi
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
call fcn.004211b0
mov edi, dword [edi]
push esi
mov ecx, edi
call fcn.00406930
add esi, 0x14
add edi, 0x14
cmp esi, dword [ebp - 0xd0]
jne 0x41ba80
push ecx
mov edx, edi
mov ecx, edi
call fcn.00418530
mov eax, dword [ebp - 0xa0]
lea ecx, [ebp - 0xa0]
add esp, 4
mov dword [ebp - 0xa0], 0
mov dword [eax + 4], edi
call fcn.00421130
mov byte [ebp - 4], 5
call fcn.004349e0
add esp, 0x20
test al, al
jne 0x41bb40
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.checkRenameOldDllFiles:_faild
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x153
movups xmmword [eax], xmm0
call fcn.00403890
mov ecx, dword [ebp - 0x84]
add esp, 0x70
push str.checkRenameOldDllFiles_faild.
push 5
jmp 0x41cdc5
mov edi, dword [ebp - 0xb8]
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov eax, dword [edi]
test eax, eax
je 0x41bcb2
cmp word [eax], 0
je 0x41bcb2
push eax
call esi
cmp eax, 0xffffffff
je 0x41bcb2
shr eax, 4
and al, 1
je 0x41bcb2
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.has_preUpdate_dir.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x15d
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x5c
mov ecx, esp
push edi
call fcn.00406930
mov edi, dword [ebp - 0x84]
mov ecx, edi
call fcn.00420190
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
test al, al
mov ecx, 2
mov eax, esp
movups xmmword [eax], xmm0
je 0x41bc59
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.preUpdate_verifyMd5_OK.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x160
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x70
mov dword [edi + 0x1c4], 1
jmp 0x41c689
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.preUpdate_verifyMd5_faild.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x164
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x6c
lea ecx, [edi + 0x210]
mov edx, 3
call fcn.00430ce0
add esp, 4
jmp 0x41bcb8
mov edi, dword [ebp - 0x84]
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.needCopyFiles.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x16b
movups xmmword [eax], xmm0
call fcn.00403890
mov eax, dword [edi + 0x1fc]
add esp, 0x70
test eax, eax
je 0x41cd4e
cmp word [eax], 0
je 0x41cd4e
push eax
call esi
cmp eax, 0xffffffff
je 0x41cd4e
shr eax, 4
test al, 1
je 0x41cd4e
mov ecx, dword [ebp - 0xb8]
call fcn.00432d00
mov edx, dword [ebp - 0xcc]
lea ecx, [ebp - 0x104]
call fcn.00431270
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x100]
mov edi, dword [ebp - 0x104]
mov dword [ebp - 0xa0], eax
cmp edi, eax
je 0x41bf57
nop
push edi
lea ecx, [ebp - 0x140]
call fcn.00406930
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa4], 0
mov byte [ebp - 4], 0xa
mov esi, dword [ebp - 0x140]
test esi, esi
je 0x41bdc7
cmp word [esi], 0
mov ecx, esi
jne 0x41bdcc
mov ecx, 0x628fa4
mov eax, dword [ebp - 0xcc]
mov eax, dword [eax]
test eax, eax
je 0x41bdde
cmp word [eax], 0
jne 0x41bde3
mov eax, 0x628fa4
push ecx
push 0x6294f0
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
test esi, esi
je 0x41be0f
cmp word [esi], 0
mov ecx, esi
jne 0x41be14
mov ecx, 0x628fa4
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
test eax, eax
je 0x41be26
cmp word [eax], 0
jne 0x41be2b
mov eax, 0x628fa4
push ecx
push 0x6294f0
push eax
lea ecx, [ebp - 0xb4]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x41be5b
cmp word [ecx], 0
jne 0x41be60
mov ecx, 0x628fa4
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41be70
cmp word [eax], 0
jne 0x41be75
mov eax, 0x628fa4
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, 1
jne 0x41c227
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41bea5
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
test eax, eax
je 0x41bee0
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41befd
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41bf24
push eax
call fcn.004d2e13
add esp, 4
mov byte [ebp - 4], 7
test esi, esi
je 0x41bf35
push esi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x134]
test eax, eax
je 0x41bf48
push eax
call fcn.004d2e13
add esp, 4
add edi, 0x14
cmp edi, dword [ebp - 0xa0]
jne 0x41bd80
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.copy_patchDir_done.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x182
movups xmmword [eax], xmm0
call fcn.00403890
mov edi, dword [ebp - 0x84]
add esp, 0x70
mov esi, dword [edi + 0x15c]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x41c3bc
nop dword [eax]
lea edi, [esi + 0x10]
push edi
lea ecx, [ebp - 0x44]
call fcn.00406930
lea eax, [edi + 0x14]
push eax
lea ecx, [ebp - 0x30]
call fcn.00406930
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x140]
call fcn.00406930
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa4], 0
mov byte [ebp - 4], 0xe
mov edi, dword [ebp - 0x140]
test edi, edi
je 0x41c032
cmp word [edi], 0
mov ecx, edi
jne 0x41c037
mov ecx, 0x628fa4
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
test eax, eax
je 0x41c049
cmp word [eax], 0
jne 0x41c04e
mov eax, 0x628fa4
push ecx
push 0x6294f0
push eax
lea ecx, [ebp - 0xb4]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41c07e
cmp word [eax], 0
jne 0x41c083
mov eax, 0x628fa4
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
je 0x41c118
test edi, edi
je 0x41c09f
cmp word [edi], 0
mov ecx, edi
jne 0x41c0a4
mov ecx, 0x628fa4
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax]
test eax, eax
je 0x41c0b6
cmp word [eax], 0
jne 0x41c0bb
mov eax, 0x628fa4
push ecx
push 0x6294f0
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x41c0eb
cmp word [ecx], 0
jne 0x41c0f0
mov ecx, 0x628fa4
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41c100
cmp word [eax], 0
jne 0x41c105
mov eax, 0x628fa4
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, 1
jne 0x41c4b3
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41c135
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
test eax, eax
je 0x41c170
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41c18d
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41c1c8
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
test edi, edi
je 0x41c1d5
push edi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x134]
test eax, eax
je 0x41c1e8
push eax
call fcn.004d2e13
add esp, 4
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 7
call fcn.0041cef0
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x41c38f
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x41c220
nop word [eax + eax]
cmp esi, dword [eax + 8]
jne 0x41c220
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x41c210
mov esi, eax
jmp 0x41c3ac
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00407000
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, eax
mov ecx, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push ecx
lea ecx, [ebp - 0x9c]
mov byte [eax], 2
mov dword [eax + 8], edx
call fcn.00407000
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov ecx, esp
push str.copy_patch_file_error._srcPath:_s__destPath:_s
push str.UpdateMgr
mov byte [ecx], 2
mov dword [ecx + 8], eax
mov ecx, 4
push str.UpdateMgr::startUpdate
push 0x17d
call fcn.00403890
mov ecx, dword [ebp - 0x84]
add esp, 0x70
push str.copy_patch_file_error
push 6
call fcn.0041d620
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41c2d3
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
test eax, eax
je 0x41c30e
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41c32b
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41c366
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
test esi, esi
je 0x41c373
push esi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x134]
test eax, eax
je 0x41c444
push eax
call fcn.004d2e13
add esp, 4
jmp 0x41c444
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x41c3ac
nop dword [eax]
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x41c3a0
cmp byte [esi + 0xd], 0
je 0x41bfd0
mov edi, dword [ebp - 0x84]
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.copy_installDir_done.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x194
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x5c
lea eax, [edi + 0x210]
mov ecx, esp
push eax
call fcn.00406930
mov ecx, edi
call fcn.00420190
test al, al
jne 0x41c61f
push str.verify_md5_faild_after_copy_files.
push 4
mov ecx, edi
call fcn.0041d620
mov ecx, dword [ebp - 0x104]
test ecx, ecx
je 0x41cdca
mov edx, dword [ebp - 0x100]
push ecx
call fcn.00418530
mov ecx, dword [ebp - 0xfc]
mov eax, 0x66666667
mov esi, dword [ebp - 0x104]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x41c4a4
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41ced7
push ecx
push esi
call fcn.004ce396
add esp, 8
jmp 0x41cdca
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00407000
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, eax
mov ecx, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push ecx
lea ecx, [ebp - 0x9c]
mov byte [eax], 2
mov dword [eax + 8], edx
call fcn.00407000
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov ecx, esp
push str.copy_old_file_error._srcPath:_s__destPath:_s
push str.UpdateMgr
mov byte [ecx], 2
mov dword [ecx + 8], eax
mov ecx, 4
push str.UpdateMgr::startUpdate
push 0x18e
call fcn.00403890
mov ecx, dword [ebp - 0x84]
add esp, 0x70
push str.copy_old_file_error.
push 6
call fcn.0041d620
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x41c55f
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
test eax, eax
je 0x41c59a
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x9c]
test eax, eax
je 0x41c5b7
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
test eax, eax
je 0x41c5f2
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
test edi, edi
je 0x41c5ff
push edi
call fcn.004d2e13
add esp, 4
mov eax, dword [ebp - 0x134]
test eax, eax
je 0x41c612
push eax
call fcn.004d2e13
add esp, 4
lea ecx, [ebp - 0x44]
call fcn.0041cef0
jmp 0x41c444
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x104]
test ecx, ecx
je 0x41c689
mov edx, dword [ebp - 0x100]
push ecx
call fcn.00418530
mov ecx, dword [ebp - 0xfc]
mov eax, 0x66666667
mov esi, dword [ebp - 0x104]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x41c67f
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41ced7
push ecx
push esi
call fcn.004ce396
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x11c], 0
movups xmmword [ebp - 0x12c], xmm0
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], 0
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe8], 0
mov byte [ebp - 4], 0x11
mov edi, dword [ebp - 0xb8]
mov eax, dword [edi]
test eax, eax
je 0x41c6d5
cmp word [eax], 0
jne 0x41c6da
mov eax, 0x628fa4
push 0x62a434
push 0x6294f0
push eax
lea ecx, [ebp - 0x12c]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax]
test eax, eax
je 0x41c710
cmp word [eax], 0
jne 0x41c715
mov eax, 0x628fa4
push 0x62a434
push 0x6294f0
push eax
lea ecx, [ebp - 0xe4]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x41c749
cmp word [eax], 0
jne 0x41c74e
mov eax, 0x628fa4
push str._bak
push eax
lea ecx, [ebp - 0xf8]
call fcn.00406cf0
mov ecx, eax
call fcn.00406cf0
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x41c776
cmp word [eax], 0
jne 0x41c77b
mov eax, 0x628fa4
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp eax, 1
jne 0x41c7a5
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x41c79d
cmp word [eax], 0
jne 0x41c7a2
mov eax, 0x628fa4
push eax
call esi
lea edx, [ebp - 0xf8]
lea ecx, [ebp - 0xe4]
call fcn.0042ff80
test al, al
jne 0x41c853
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push ecx
lea ecx, [ebp - 0xe4]
movups xmmword [eax], xmm0
call fcn.00407000
sub esp, 0x10
mov edi, eax
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.004182c0
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
push str.copy_wechat.exe._renameFile_faild._path_s__lastErr_d
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1b0
mov byte [eax], 2
mov dword [eax + 8], edi
call fcn.00403890
add esp, 0x70
mov ecx, str.rename_wechat.exe_error.
mov eax, 5
push ecx
mov ecx, dword [ebp - 0x84]
push eax
call fcn.0041d620
jmp 0x41cc40
mov ecx, dword [ebp - 0xe4]
test ecx, ecx
je 0x41c863
cmp word [ecx], 0
jne 0x41c868
mov ecx, 0x628fa4
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x41c878
cmp word [eax], 0
jne 0x41c87d
mov eax, 0x628fa4
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, 1
je 0x41c8d1
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x41c89c
cmp word [eax], 0
jne 0x41c8a1
mov eax, 0x628fa4
push eax
call esi
lea edx, [ebp - 0xe4]
lea ecx, [ebp - 0xf8]
call fcn.0042ff80
mov ecx, str.copy_wechat.exe_error.
mov eax, 6
push ecx
mov ecx, dword [ebp - 0x84]
push eax
call fcn.0041d620
jmp 0x41cc40
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.copy_wechat.exe_done.
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1be
movups xmmword [eax], xmm0
call fcn.00403890
mov edx, dword [ebp - 0xc4]
add esp, 0x70
mov ecx, edi
call fcn.0042fed0
test al, al
jne 0x41cabf
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.rename_tmp_directory_to_final_path_faild_
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1c4
movups xmmword [eax], xmm0
call fcn.00403890
mov ecx, dword [ebp - 0xc4]
add esp, 0x70
call fcn.00432d00
mov edx, dword [ebp - 0xc4]
mov ecx, edi
call fcn.004301b0
test al, al
jne 0x41ca62
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x41c9d0
cmp word [eax], 0
jne 0x41c9d5
mov eax, 0x628fa4
push eax
call esi
lea edx, [ebp - 0xe4]
lea ecx, [ebp - 0xf8]
call fcn.0042ff80
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.forceRenameFileUseCopy_faild_
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1cb
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x70
mov ecx, str.rename_final_dir_error.
mov eax, 9
push ecx
mov ecx, dword [ebp - 0x84]
push eax
call fcn.0041d620
jmp 0x41cc40
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.forceRenameFileUseCopy_ok_
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1cf
movups xmmword [eax], xmm0
call fcn.00403890
add esp, 0x70
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 2
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.rename_temp_dir_ok_
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1d2
movups xmmword [eax], xmm0
call fcn.00403890
mov eax, dword [ebp - 0xf8]
add esp, 0x70
test eax, eax
je 0x41cb2c
cmp word [eax], 0
jne 0x41cb31
mov eax, 0x628fa4
push eax
call esi
cmp eax, 1
je 0x41cbb2
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push ecx
lea ecx, [ebp - 0xf8]
movups xmmword [eax], xmm0
call fcn.00407000
sub esp, 0x10
mov edi, eax
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.004182c0
sub esp, 0x10
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov eax, esp
mov ecx, 4
push str.deleteFile_wechat.exe_bak_faild._path_s__lastErr_d
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1d7
mov byte [eax], 2
mov dword [eax + 8], edi
call fcn.00403890
add esp, 0x70
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov esi, dword [ebp - 0x84]
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
mov ecx, esp
push dword [esi + 0x160]
movups xmmword [eax], xmm0
call fcn.004182c0
push str.update_success__replaced_file_count:__d
push str.UpdateMgr
push str.UpdateMgr::startUpdate
push 0x1db
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
mov ecx, 2
call fcn.00403890
add esp, 0x70
mov ecx, esi
call fcn.0041cf80
push 0
push 0
push 0x468
push dword [esi + 0x22c]
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, esi
call fcn.0041dac0
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x41cc5d
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xf4], 0
test eax, eax
je 0x41cc98
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x41ccb5
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 0
test eax, eax
je 0x41ccf0
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x41cd0d
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x128], 0
test eax, eax
je 0x41cdca
push eax
call fcn.004d2e13
add esp, 4
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
jmp 0x41cdca
push ecx
lea ecx, [edi + 0x1fc]
call fcn.00407000
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, eax
mov ecx, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, 4
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.failReason:_patch_not_exist:__s
push str.UpdateMgr
push str.UpdateMgr::startUpdate
mov dword [eax + 8], edx
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
push 0x16e
mov byte [eax], 2
call fcn.00403890
add esp, 0x70
mov ecx, edi
push str.patch_not_Exist
push 3
call fcn.0041d620
mov ecx, dword [ebp - 0x118]
test ecx, ecx
je 0x41ceb2
mov edx, dword [ebp - 0x114]
push ecx
call fcn.00418530
mov ecx, dword [ebp - 0x110]
mov eax, 0x66666667
mov esi, dword [ebp - 0x118]
add esp, 4
sub ecx, esi
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x41ce2a
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41cedc
push ecx
push esi
call fcn.004ce396
add esp, 8
jmp 0x41ceb2
push ecx
mov ecx, edi
call fcn.00407000
movups xmm0, xmmword [0x628d68]
sub esp, 0x10
mov edx, eax
mov ecx, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, 4
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
push str.get_new_file_info_failed_com__s
push str.UpdateMgr
push str.UpdateMgr::startUpdate
mov dword [eax + 8], edx
mov edx, str.D:Tools_agentworkspaceWeChatUpdateWechatUpdatemanagerUpdateMgr.cpp
push 0x12c
mov byte [eax], 2
call fcn.00403890
add esp, 0x70
push str.get_new_file_info_failed
mov ecx, dword [ebp - 0x84]
push 8
call fcn.0041d620
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004cdf2e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.004dac9a
call fcn.004d85d5
call fcn.004d85d5
int3