Function at 0x14000ecf8
Capabilities:
Clear file content
Timestomp file

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x20], r9d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov ebx, r9d
mov r15d, r8d
mov r14d, edx
mov rbp, rcx
call fcn.140005870
mov rcx, qword [0x1400284a8]
mov rax, qword [rcx]
mov r8, qword [rbp + 0x20]
mov edx, dword [rbp + 0x1c]
xor r9d, r9d
call qword [rax + 0x60]
xor edi, edi
cmp eax, edi
mov esi, eax
jl 0x14000efb5
cmp dword [rbp + 0x18], edi
mov eax, 0x28000080
mov qword [rsp + 0x30], rdi
mov r13d, 0x8000080
lea rcx, [rbp + 0x34]
mov edx, 0x40000000
cmove r13d, eax
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 4
mov esi, edi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbp + 0x258], rax
cmp rax, 0xffffffffffffffff
jne 0x14000ee25
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 3
jne 0x14000ee66
lea rcx, [rbp + 0x34]
call fcn.1400107e0
lea rcx, [rbp + 0x34]
xor edx, edx
movzx ebx, word [rax]
mov rdi, rax
xor eax, eax
mov word [rdi], ax
call fcn.140010910
mov word [rdi], bx
xor edi, edi
mov esi, eax
cmp eax, edi
jl 0x14000efb5
mov qword [rsp + 0x30], rdi
lea rcx, [rbp + 0x34]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 4
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbp + 0x258], rax
cmp rax, 0xffffffffffffffff
jne 0x14000ee16
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
cmp eax, edi
cmovle esi, eax
mov ebx, dword [rsp + 0xa8]
cmp esi, edi
jl 0x14000efb5
lea r8, [rbp + 0x34]
lea rdx, str.opened_cache_file:__S
mov ecx, 3
call fcn.140013150
cmp r14d, edi
je 0x14000ef26
cmp dword [rbp + 0x18], edi
jne 0x14000ee76
mov ecx, dword [0x140028480]
mov rax, qword [rbp + 0x248]
lea rdx, [rax + rcx - 1]
lea rax, [rcx - 1]
not rax
and rdx, rax
jmp 0x14000ee7d
movzx esi, ax
or esi, 0x80070000
cmp eax, edi
cmovle esi, eax
jmp 0x14000ee1d
mov rdx, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x258]
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
cmp eax, edi
jne 0x14000eeb5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, 0x80070000
movzx esi, ax
or esi, r12d
cmp eax, edi
cmovle esi, eax
cmp esi, edi
jl 0x14000efb5
jmp 0x14000eebb
mov r12d, 0x80070000
mov rcx, qword [rbp + 0x258]
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp eax, edi
jne 0x14000eee5
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, r12d
cmp eax, edi
cmovle esi, eax
cmp esi, edi
jl 0x14000efb5
mov rax, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x258]
mov rdx, rdi
cmp rax, rdi
cmovg rdx, rax
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
cmp eax, edi
jne 0x14000ef26
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, r12d
cmp eax, edi
cmovle esi, eax
cmp esi, edi
jl 0x14000efb5
cmp r15d, edi
je 0x14000ef61
mov rcx, qword [rbp + 0x258]
lea rdx, [rbp + 0x250]
mov r9, rdx
mov r8, rdx
call qword [sym.imp.KERNEL32.dll_SetFileTime]
cmp eax, edi
jne 0x14000ef61
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
cmp eax, edi
cmovle esi, eax
cmp esi, edi
jl 0x14000efb5
cmp ebx, edi
je 0x14000efb5
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
mov rcx, qword [rbp + 0x258]
lea r9, [rsp + 0x90]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileTime]
cmp eax, edi
jne 0x14000efb5
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
cmp eax, edi
cmovle esi, eax
mov eax, esi
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret