Function at 0x17cd0c60
Capabilities:
Copy file

Disassembly:
push 0x28
mov eax, 0x17d13165
call fcn.17ce4bbb
mov edi, ecx
mov dword [ebp - 0x28], edi
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0xa4]
mov eax, dword [eax + 0xc]
mov esi, dword [eax]
mov ebx, dword [sym.imp.msvcrt.dll__wcsicmp]
mov byte [ebp - 4], 1
mov dword [ebp - 0x24], esi
mov eax, dword [edi + 0xa4]
cmp esi, dword [eax + 0xc]
je 0x17cd0d4d
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0x17c91fbc
push eax
call ebx
pop ecx
pop ecx
test eax, eax
je 0x17cd0ccf
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0x17c945dc
push eax
call ebx
pop ecx
pop ecx
test eax, eax
jne 0x17cd0ce1
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x10]
push eax
call fcn.17ce6398
test eax, eax
jge 0x17cd0cee
lea ecx, [ebp - 0x24]
call fcn.17cd01ae
mov esi, dword [ebp - 0x24]
jmp 0x17cd0c94
cmp dword [ebp - 0x14], 0
mov esi, dword [esi + 0xc]
je 0x17cd0d03
push dword [ebp - 0x14]
call fcn.17d06bf2
and dword [ebp - 0x14], 0
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
push eax
lea eax, [ebp - 0x14]
push 0x17c92dc0
push eax
call fcn.17c9f12f
mov esi, eax
add esp, 0xc
test esi, esi
jge 0x17cd0d4d
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd0d47
test byte [eax + 0x1c], 1
je 0x17cd0d47
push esi
push 0x17c94540
push 0xa
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
push esi
call fcn.17ce54ec
cmp dword [ebp - 0x14], 0
jne 0x17cd0d9b
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd1153
test byte [eax + 0x1c], 4
je 0x17cd1153
push 0x80070002
push 0x17c94540
push 0xb
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
cmp dword [ebp - 0x14], 0
je 0x17cd1153
push dword [ebp - 0x14]
call fcn.17d06bf2
jmp 0x17cd1153
mov eax, dword [edi + 0xa4]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
xor bl, bl
mov dword [ebp - 0x24], eax
mov ecx, dword [edi + 0xa4]
cmp eax, dword [ecx + 0xc]
je 0x17cd0ddf
mov eax, dword [eax + 0xc]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
push 0x17c945cc
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x17cd0e0c
lea ecx, [ebp - 0x24]
call fcn.17cd01ae
mov eax, dword [ebp - 0x24]
jmp 0x17cd0dab
test bl, bl
jne 0x17cd0e0c
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd0d84
test byte [eax + 0x1c], 4
je 0x17cd0d84
push 0x17c94540
push 0xc
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17c9f43a
jmp 0x17cd0d84
and dword [ebp - 0x30], 0
and dword [ebp - 0x18], 0
mov eax, dword [edi + 0xa4]
mov eax, dword [eax + 0xc]
mov esi, dword [eax]
mov byte [ebp - 4], 2
mov dword [ebp - 0x24], esi
mov eax, dword [edi + 0xa4]
cmp esi, dword [eax + 0xc]
je 0x17cd0ed0
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0x17c945cc
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x17cd0ec0
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x10]
push 0x7c
push eax
call dword [sym.imp.msvcrt.dll_wcsrchr]
mov esi, eax
xor ebx, ebx
pop ecx
pop ecx
cmp esi, ebx
je 0x17cd0ec0
cmp word [esi], bx
je 0x17cd0ec0
inc esi
inc esi
cmp dword [ebp - 0x18], ebx
je 0x17cd0e81
push dword [ebp - 0x18]
call fcn.17d06bf2
mov dword [ebp - 0x18], ebx
push esi
lea eax, [ebp - 0x18]
push 0x17c92dc0
push eax
call fcn.17c9f12f
mov esi, eax
add esp, 0xc
cmp esi, ebx
jge 0x17cd0ed0
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd0d47
test byte [eax + 0x1c], 1
je 0x17cd0d47
push esi
push 0x17c94540
push 0xd
jmp 0x17cd0d3c
lea ecx, [ebp - 0x24]
call fcn.17cd01ae
mov esi, dword [ebp - 0x24]
jmp 0x17cd0e26
mov eax, dword [ebp - 0x14]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x17cd0ed6
sub eax, edx
xor ebx, ebx
sar eax, 1
lea esi, [eax + eax]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x20], ebx
lea eax, [ebp - 0x20]
push eax
push 0x17c91c64
push 0x17c91c38
mov byte [ebp - 4], 3
call fcn.17ca2299
mov edi, eax
cmp edi, ebx
jge 0x17cd0f37
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd0f31
test byte [eax + 0x1c], 1
je 0x17cd0f31
push edi
push 0x17c94540
push 0xf
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
push edi
jmp 0x17cd0d48
mov eax, dword [ebp - 0x14]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, bx
jne 0x17cd0f3d
sub eax, edx
sar eax, 1
add eax, eax
mov dword [ebp - 0x1c], ebx
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x1c]
push ecx
push esi
push dword [ebp - 0x14]
mov byte [ebp - 4], 4
push eax
push dword [ebp - 0x20]
mov dword [ebp - 0x2c], ebx
call fcn.17d077c1
cmp eax, ebx
jge 0x17cd0fc6
mov ecx, dword [0x17d26008]
cmp ecx, 0x17d26008
je 0x17cd0f97
test byte [ecx + 0x1c], 1
je 0x17cd0f97
push eax
push 0x17c94540
push 0x11
push dword [ecx + 0x14]
push dword [ecx + 0x10]
call fcn.17ca2c24
cmp dword [ebp - 0x1c], ebx
je 0x17cd0fa4
push dword [ebp - 0x1c]
call fcn.17d06bf2
cmp dword [ebp - 0x20], ebx
je 0x17cd0fb1
push dword [ebp - 0x20]
call fcn.17d06bf2
cmp dword [ebp - 0x18], ebx
je 0x17cd0fbe
push dword [ebp - 0x18]
call fcn.17d06bf2
cmp dword [ebp - 0x14], ebx
jmp 0x17cd0d88
push ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, ebx
jne 0x17cd0ffa
call fcn.17ce51cd
mov ecx, dword [0x17d26008]
cmp ecx, 0x17d26008
je 0x17cd0f97
test byte [ecx + 0x1c], 1
je 0x17cd0f97
push eax
push 0x17c94540
push 0x12
jmp 0x17cd0f8c
push dword [ebp + 8]
push ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x14]
call fcn.17d06d15
mov esi, eax
cmp esi, ebx
jge 0x17cd1041
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd0f97
test byte [eax + 0x1c], 1
je 0x17cd0f97
push esi
push 0x17c94540
push 0x13
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
jmp 0x17cd0f97
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x24], ebx
mov byte [ebp - 4], 5
cmp dword [ebp - 0x18], ebx
je 0x17cd10b1
push dword [ebp - 0x18]
lea eax, [ebp + 8]
push 0x7c
push dword [ebp - 0x1c]
mov dword [ebp + 8], ebx
push 0x17c945bc
push eax
call fcn.17c9f12f
mov esi, eax
add esp, 0x14
cmp esi, ebx
jge 0x17cd109b
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd1097
test byte [eax + 0x1c], 2
je 0x17cd1097
push esi
push 0x17c94540
push 0x14
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
xor esi, esi
jmp 0x17cd10a4
mov eax, dword [ebp + 8]
mov dword [ebp + 8], ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp + 8], ebx
je 0x17cd10b1
push dword [ebp + 8]
call fcn.17d06bf2
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
push 0x17c945a0
call fcn.17cf4f4f
cmp dword [ebp - 0x24], ebx
je 0x17cd10de
push dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
push 0x17c945cc
call fcn.17cf4f4f
push dword [ebp - 0x24]
call fcn.17d06bf2
cmp dword [ebp - 0x1c], ebx
je 0x17cd10eb
push dword [ebp - 0x1c]
call fcn.17d06bf2
cmp dword [ebp - 0x20], ebx
je 0x17cd10f8
push dword [ebp - 0x20]
call fcn.17d06bf2
cmp dword [ebp - 0x18], ebx
je 0x17cd1105
push dword [ebp - 0x18]
call fcn.17d06bf2
cmp dword [ebp - 0x14], ebx
je 0x17cd112a
push dword [ebp - 0x14]
call fcn.17d06bf2
jmp 0x17cd112a
cmp esi, ebx
jge 0x17cd1153
mov eax, dword [0x17d26008]
cmp eax, 0x17d26008
je 0x17cd1153
test byte [eax + 0x1c], 1
je 0x17cd1153
push esi
push 0x17c94540
push 0x15
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.17ca2c24
call fcn.17ce4c6f
ret 4