Function at 0x440cd2
Capabilities:
Copy file

Disassembly:
push 0x80
mov eax, 0x4b4c11
call fcn.004935c5
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x44]
sub eax, dword [esi + 0x40]
push 0x38
pop ecx
cdq
idiv ecx
push eax
push str._Add_:__d.
push str.kupdate::KWpsUpdateImpl::HandleAdd
push 0x436
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdatemiscKWpsUpdateImpl.cpp
push 4
call fcn.0042f683
mov eax, dword [esi + 0x40]
add esp, 0x18
mov dword [ebp - 0x84], eax
cmp eax, dword [esi + 0x44]
je 0x440e9c
lea ebx, [eax + 0x1c]
mov dword [ebp - 0x88], ebx
xor edi, edi
jmp 0x440d3a
mov ebx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x84]
cmp dword [ebx + 0x14], 8
jb 0x440d44
mov ecx, dword [ebx]
jmp 0x440d46
mov ecx, ebx
cmp dword [ebx - 8], 8
jb 0x440d4e
mov eax, dword [eax]
push ecx
push eax
push str.Add_file:_name___s__path___s.
push str.kupdate::KWpsUpdateImpl::HandleAdd
push 0x43b
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdatemiscKWpsUpdateImpl.cpp
push 7
call fcn.0042f683
mov eax, dword [ebp - 0x84]
add esp, 0x1c
cmp dword [ebx - 8], 8
jb 0x440d7c
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.0047cf01
pop ecx
pop ecx
cmp dword [ebx + 0x14], 8
mov dword [ebp - 4], edi
jb 0x440d93
mov ebx, dword [ebx]
lea eax, [ebp - 0x80]
push ebx
push eax
call fcn.0047cf01
pop ecx
pop ecx
push 8
pop ebx
mov byte [ebp - 4], 1
cmp dword [eax + 0x14], ebx
jb 0x440dad
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0047bb65
pop ecx
pop ecx
push edi
push 1
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.0042e109
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ebx
jae 0x440dd3
lea eax, [ebp - 0x2c]
push eax
call fcn.0047c7fe
pop ecx
mov dword [ebp - 0x8c], eax
cmp eax, edi
jl 0x440ea6
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x440df3
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.0047bf94
pop ecx
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 4
call fcn.0042ed15
push edi
push 1
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.0042e109
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ebx
jae 0x440e29
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x440e34
lea eax, [ebp - 0x48]
push edi
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, edi
je 0x440f01
call fcn.0043f1d3
push 0x4bf00c
mov ebx, eax
call fcn.00493091
pop ecx
push eax
push 0x4bf00c
lea ecx, [ebx + 0x44]
call fcn.0042e40f
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.0042e109
or dword [ebp - 4], 0xffffffff
push edi
push 1
lea ecx, [ebp - 0x48]
call fcn.0042e109
add dword [ebp - 0x84], 0x38
mov eax, dword [ebp - 0x84]
add dword [ebp - 0x88], 0x38
cmp eax, dword [esi + 0x44]
jne 0x440d2e
xor eax, eax
call fcn.00493648
ret 4
call fcn.0043f1d3
mov esi, 0x4bf004
push esi
mov ebx, eax
call fcn.00493091
pop ecx
push eax
push esi
lea ecx, [ebx + 0x44]
call fcn.0042e40f
push dword [ebp - 0x8c]
push str.Failed_to_create_dst_dir:_0x_08x.
push str.kupdate::KWpsUpdateImpl::HandleAdd
push 0x444
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdatemiscKWpsUpdateImpl.cpp
push edi
call fcn.0042f683
add esp, 0x18
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.0042e109
push edi
push 1
lea ecx, [ebp - 0x48]
call fcn.0042e109
xor eax, eax
inc eax
jmp 0x440e9e
call fcn.0043f1d3
mov esi, 0x4bf004
push esi
mov ebx, eax
call fcn.00493091
pop ecx
push eax
push esi
lea ecx, [ebx + 0x44]
call fcn.0042e40f
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jle 0x440f32
and eax, 0xffff
or eax, 0x80070000
push eax
push str.Failed_to_add_file:_0x_08x.
push str.kupdate::KWpsUpdateImpl::HandleAdd
push 0x44d
jmp 0x440ed8