Function at 0x4193f0
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x59c
push ebx
push esi
push edi
xor edx, edx
mov ecx, 0x4f
xor eax, eax
lea edi, [esp + 0x262]
mov word [esp + 0x260], dx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ebx, dword [ebp + 0x14]
mov ecx, 0x4f
xor eax, eax
lea edi, [esp + 0x22]
mov word [esp + 0x20], dx
cmp ebx, edx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [esp + 0xc], edx
je 0x419751
mov eax, dword [ebp + 8]
cmp eax, edx
je 0x419751
mov edi, dword [ebp + 0xc]
cmp edi, edx
je 0x419751
mov esi, dword [ebp + 0x10]
cmp esi, edx
je 0x419751
cmp word [ebx], dx
je 0x419716
cmp word [eax], dx
je 0x419716
mov ecx, dword [edi + 4]
mov eax, dword [edi]
mov edx, dword [esi]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esi + 4]
lea ecx, [esp + 0x260]
push 0x469440
push ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
call dword [sym.imp.MSVCRT.dll_wcscpy]
mov edx, dword [ebp + 8]
lea eax, [esp + 0x2a8]
push edx
push eax
call dword [sym.imp.MSVCRT.dll_wcscpy]
lea ecx, [esp + 0x30]
push 0x469480
push ecx
call dword [sym.imp.MSVCRT.dll_wcscpy]
lea edx, [esp + 0x278]
push ebx
lea eax, [esp + 0x3c]
push edx
push eax
call fcn.00401cd0
add esp, 0x24
cmp eax, 0xffffffff
jne 0x4195ce
mov esi, dword [sym.imp.MSVCRT.dll_swprintf]
push 0x45dbac
push 0x456ea0
lea ecx, [esp + 0x3a8]
push 0x42e5c0
push ecx
call esi
lea edx, [esp + 0x3b0]
push edx
call fcn.00423900
add esp, 0x14
cmp word [esp + 0x3a0], 0
je 0x419549
push 0
lea eax, [esp + 0x3a4]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x419549
lea ecx, [esp + 0x260]
push ebx
lea edx, [esp + 0x24]
push ecx
push edx
call fcn.00401cd0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x41957e
push 0
push 0
push ebx
push 0
push 0xffffffffffffffff
push 0
push 0x2f0
call fcn.004247e0
push ebx
lea eax, [esp + 0x180]
push str.Cannot_read__s.
push eax
call esi
add esp, 0x28
mov dword [esp + 0xc], 1
jmp 0x4196f7
push 0
push 0
push ebx
push 0
push 0xffffffffffffffff
push 0
push 0x2ee
call fcn.004247e0
add esp, 0x1c
mov eax, dword [0x42e9f0]
lea ecx, [esp + 0x160]
push eax
push 0x46b9e0
push ecx
push 0
push 0xffffffffffffffff
push 7
push 0x224
call fcn.004247e0
mov ecx, dword [esp + 0x28]
add esp, 0x1c
xor eax, eax
test ecx, ecx
sete al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test eax, eax
jne 0x419605
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x160]
push ecx
push str.S_N_s_not_found.
push edx
call dword [sym.imp.MSVCRT.dll_swprintf]
add esp, 0xc
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [esp + 0xc], 1
jmp 0x4196f7
lea eax, [esp + 0x60]
push 0
push eax
call dword [sym.imp.MSVCRT.dll_wcstod]
fstp qword [edi]
lea ecx, [esp + 0x28]
push 0x4694c0
mov dword [esi], 0
push ecx
mov dword [esi + 4], 0
call dword [sym.imp.MSVCRT.dll_wcscpy]
lea edx, [esp + 0x270]
push ebx
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00401cd0
add esp, 0x1c
cmp eax, 0xffffffff
jne 0x419656
mov dword [esp + 0xc], 1
jmp 0x419668
lea ecx, [esp + 0x60]
push 0
push ecx
call dword [sym.imp.MSVCRT.dll_wcstod]
fstp qword [esi]
add esp, 8
mov edx, dword [esi + 4]
mov eax, dword [esi]
mov ecx, dword [edi + 4]
push edx
mov edx, dword [edi]
push eax
mov eax, dword [ebp + 8]
push ecx
push edx
push eax
lea ecx, [esp + 0x174]
push str.S_N_s_found._A_0.1f_B_0.1f
push ecx
call dword [sym.imp.MSVCRT.dll_swprintf]
fld qword [edi]
fcomp qword [esp + 0x2c]
add esp, 0x1c
fnstsw ax
test ah, 0x40
je 0x4196aa
fld qword [esi]
fcomp qword [esp + 0x18]
fnstsw ax
test ah, 0x40
jne 0x4196eb
mov eax, dword [0x42e9e4]
test eax, eax
jne 0x4196eb
cmp word [0x456ea0], 0
je 0x4196eb
mov eax, dword [0x42e9f0]
push 0
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
mov eax, dword [0x4f0c7c]
shl edx, 4
sub edx, 0x61a80
push edx
push 0x143
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [esp + 0xc]
test eax, eax
je 0x419596
mov ecx, dword [0x42e9f0]
lea edx, [esp + 0x160]
push ecx
push 0x46b9e0
push edx
push 0
push 0xffffffffffffffff
push 0
jmp 0x4195af
mov dword [esi], edx
mov dword [esi + 4], edx
mov dword [edi], edx
mov dword [edi + 4], edx
mov eax, dword [0x42e9f0]
lea ecx, [esp + 0x160]
push eax
push 0x46b9e0
push ecx
push edx
push 0xffffffffffffffff
push 7
push 0x224
call fcn.004247e0
add esp, 0x1c
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret