Function at 0x58e1a9
Capabilities:
Copy file

Disassembly:
push 0x30
mov eax, 0x60b628
call fcn.004db48b
mov edi, ecx
mov dword [ebp - 0x18], edi
mov ebx, dword [ebp + 8]
xor ecx, ecx
or dword [ebp - 0x30], 0xffffffff
inc ecx
push 0xf
pop eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x28]
mov word [ebp - 0x3c], ax
xor eax, eax
push ecx
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebx]
push ecx
push ebx
call dword [eax + 0xc]
test eax, eax
js 0x58e3b8
mov eax, dword [0x668294]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
and dword [ebp - 4], 0
lea ecx, [ebp - 0x10]
mov eax, 0x104
push eax
push eax
call fcn.0040ceb7
push eax
push 0
push esi
call dword [sym.imp.SHELL32.dll_DragQueryFileW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x10]
call fcn.0040ce81
push 4
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call fcn.0042a0b3
mov ecx, eax
call fcn.0042a09a
push str..skn
push dword [eax]
call fcn.005073b0
neg eax
pop ecx
pop ecx
mov ecx, dword [ebp + 8]
sbb al, al
inc al
add ecx, 0xfffffff4
mov dword [ebp - 0x1c], eax
cmp ecx, 0x668010
je 0x58e269
call fcn.00407965
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x10]
test al, al
je 0x58e3a4
push 0x5c
push esi
call fcn.004e0fe2
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
je 0x58e3a4
sub ecx, esi
sar ecx, 1
test ecx, ecx
jle 0x58e3a4
mov eax, dword [esi - 8]
sub eax, ecx
lea ecx, [ebp - 0x10]
dec eax
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0042a0b3
push 0x67476c
lea ecx, [ebp - 0x1c]
call fcn.0040d2ee
mov edi, str.Skin_
push edi
call fcn.00505bb3
pop ecx
push edi
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040f454
mov eax, dword [0x668294]
lea ecx, [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x14]
push eax
push dword [eax - 8]
push edi
push dword [edi - 8]
call fcn.0040f4c7
mov byte [ebp - 4], 3
push dword [ebp + 8]
push esi
call fcn.005144ec
pop ecx
pop ecx
xor ecx, ecx
test eax, eax
sete cl
test eax, eax
je 0x58e322
mov ecx, edi
call fcn.0059102f
test eax, eax
jne 0x58e314
mov ecx, edi
call fcn.00590f81
push 0
push dword [ebp + 8]
push esi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov ecx, eax
test ecx, ecx
je 0x58e36e
push dword [ebp + 8]
mov ecx, dword [ebp - 0x18]
call fcn.0058abe3
mov ecx, dword [ebp + 8]
mov ebx, 0x668010
add ecx, 0xfffffff4
cmp ecx, ebx
je 0x58e345
call fcn.00407965
lea ecx, [edi - 0xc]
cmp ecx, ebx
je 0x58e351
call fcn.00407965
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff4
cmp ecx, ebx
je 0x58e360
call fcn.00407965
lea ecx, [esi - 0xc]
cmp ecx, ebx
je 0x58e3e0
call fcn.00407965
jmp 0x58e3e0
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff4
cmp ecx, 0x668010
je 0x58e381
call fcn.00407965
lea ecx, [edi - 0xc]
mov edi, 0x668010
cmp ecx, edi
je 0x58e392
call fcn.00407965
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff4
cmp ecx, edi
je 0x58e3a1
call fcn.00407965
mov edi, dword [ebp - 0x18]
or dword [ebp - 4], 0xffffffff
lea ecx, [esi - 0xc]
cmp ecx, 0x668010
je 0x58e3b8
call fcn.00407965
push dword [ebp + 0x14]
lea esi, [edi + 0x3a18]
push dword [ebp + 0x10]
mov ecx, esi
push dword [ebp + 0xc]
push ebx
call fcn.005a36b7
push 1
mov ecx, esi
call fcn.005a54ce
push eax
mov ecx, esi
call fcn.005a52f4
xor eax, eax
call fcn.004db459
ret 0x10