Function at 0x4f8af8
Capabilities:
Set file attributes
Write file on windows

Disassembly:
push 0x738
mov eax, 0x66f605
call fcn.005b47af
mov edi, dword [ebp + 8]
call fcn.0040afed
mov al, byte [eax + 0x16]
test al, al
je 0x4f8b1d
xor al, al
jmp 0x4f8d9b
xor ebx, ebx
push 0x21
pop eax
mov esi, ebx
mov word [ebp - 0x478], ax
mov dword [ebp - 0x480], esi
mov dword [ebp - 0x47c], ebx
push 0x5c
pop eax
mov dword [ebp - 4], ebx
mov word [ebp - 0x1c], ax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
cmp dword [edi + 0x14], 8
mov byte [ebp - 4], 1
jb 0x4f8b55
mov eax, dword [edi]
jmp 0x4f8b57
mov eax, edi
push eax
lea ecx, [ebp - 0x474]
call fcn.004131a8
test eax, eax
je 0x4f8c2b
cmp dword [ebp - 0x14], 0
je 0x4f8b7f
mov eax, dword [ebp - 0x474]
shr eax, 4
and eax, 1
jmp 0x4f8b81
mov eax, ebx
push 1
push 3
test eax, eax
je 0x4f8bd6
lea ecx, [ebp - 0x534]
call fcn.004078ff
lea eax, [ebp - 0x524]
mov byte [ebp - 4], 2
push str.Error:_Directory_exists
push eax
call fcn.00412133
pop ecx
pop ecx
lea eax, [ebp - 0x534]
push eax
push str.Quarantine::setProtection
push 0x31c
push str.D:_build6c589d3ff8507062_srccoreQuarantine.cpp
push ebx
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x534]
jmp 0x4f8c21
lea ecx, [ebp - 0x5e4]
call fcn.004078ff
lea eax, [ebp - 0x5d4]
mov byte [ebp - 4], 3
push str.Error:_File_already_exists
push eax
call fcn.00412133
pop ecx
pop ecx
lea eax, [ebp - 0x5e4]
push eax
push str.Quarantine::setProtection
push 0x321
push str.D:_build6c589d3ff8507062_srccoreQuarantine.cpp
push ebx
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x5e4]
call fcn.0040843a
jmp 0x4f8d83
cmp dword [edi + 0x14], 8
jb 0x4f8c35
mov eax, dword [edi]
jmp 0x4f8c37
mov eax, edi
push ebx
push ebx
push 0x80
push 2
push 2
push 0x40000000
push eax
lea ecx, [ebp - 0x480]
call fcn.004130cf
mov esi, dword [ebp - 0x480]
test eax, eax
jne 0x4f8d83
push ebx
lea eax, [ebp - 0x484]
push eax
push 1
lea eax, [ebp - 0x478]
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_WriteFile]
test eax, eax
jne 0x4f8c82
call fcn.00412e32
cmp dword [edi + 0x14], 8
jb 0x4f8c8c
mov eax, dword [edi]
jmp 0x4f8c8e
mov eax, edi
push 0x11113
push eax
call dword [sym.imp.KERNEL32.DLL_SetFileAttributesW]
test eax, eax
jne 0x4f8d0e
push 1
push 3
lea ecx, [ebp - 0x694]
call fcn.004078ff
push edi
lea eax, [ebp - 0x684]
mov byte [ebp - 4], 4
push str.Error:_SetFileAttributes
push eax
call fcn.00412133
pop ecx
pop ecx
push eax
call fcn.00410ade
pop ecx
pop ecx
lea eax, [ebp - 0x694]
push eax
push str.Quarantine::setProtection
push 0x32d
push str.D:_build6c589d3ff8507062_srccoreQuarantine.cpp
push ebx
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x694]
call fcn.0040843a
test esi, esi
je 0x4f8d83
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov esi, ebx
jmp 0x4f8d83
cmp byte [ebp + 0xc], 0
je 0x4f8d74
push edi
call fcn.004d882e
pop ecx
cmp eax, 2
jne 0x4f8d74
push 1
push 3
lea ecx, [ebp - 0x744]
call fcn.004078ff
lea eax, [ebp - 0x734]
mov byte [ebp - 4], 5
push str.Error:_Setting_security
push eax
call fcn.00412133
pop ecx
pop ecx
lea eax, [ebp - 0x744]
push eax
push str.Quarantine::setProtection
push 0x336
push str.D:_build6c589d3ff8507062_srccoreQuarantine.cpp
push ebx
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x744]
call fcn.0040843a
test esi, esi
je 0x4f8d81
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov esi, ebx
mov bl, 1
lea ecx, [ebp - 0x474]
call fcn.00412f01
test esi, esi
je 0x4f8d99
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov al, bl
call fcn.005b4759
ret 8