Function at 0x1400931a0
Capabilities:
Check os version
Set file attributes

Disassembly:
push rdi
sub rsp, 0x90
mov rdi, rcx
mov rcx, qword [rcx + 0x10c30]
call fcn.14015b4c4
cmp dword [rdi + 0x20], 0
jne 0x140093522
mov qword [rsp + 0x88], rbx
lea r9, [rsp + 0x40]
mov qword [rsp + 0x80], rbp
lea r8, [rsp + 0xb8]
mov qword [rsp + 0x78], rsi
lea rdx, [rsp + 0xb0]
mov rcx, rdi
mov qword [rsp + 0x68], r13
call fcn.140093010
xor ebp, ebp
mov dword [rsp + 0xa0], eax
mov qword [rsp + 0x30], rbp
lea rcx, [rdi + 0x10c5c]
mov dword [rsp + 0x28], 0x80
xor r9d, r9d
mov edx, 0x40000000
mov dword [rsp + 0x20], 3
lea r8d, [rbp + 2]
mov esi, eax
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rcx, qword [rdi + 0xb00]
mov r13, rax
mov qword [rsp + 0xa8], rax
mov edx, dword [rcx + 0x14]
test dl, 0x5f
je 0x140093293
and edx, 0x7f
lea rcx, [rdi + 0x10c5c]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x140093293
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str._nwarning___d_:_could_not_set_file_attributes_n
lea rcx, [rdi + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea r9d, [rbp + 1]
lea rdx, [rdi + 0xb08]
mov rcx, rdi
call qword [rdi + 0x10df0]
mov rbx, qword [rdi + 0x10b60]
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x58], r15
test rbx, rbx
je 0x14009344a
mov qword [rsp + 0x60], r14
mov r14d, ebp
cmp dword [rdi + 0x68], ebp
je 0x140093445
movzx ebp, word [rdi + 0x10b88]
cmp ebp, 4
jb 0x140093443
mov r15d, dword [rsp + 0xa0]
mov r13d, 0x4453
mov r12, qword [rsp + 0xa0]
mov edx, dword [0x14021bfd8]
nop word [rax + rax]
movzx eax, byte [rbx + 2]
movzx esi, byte [rbx + 3]
shl esi, 8
or esi, eax
lea eax, [rbp - 4]
cmp esi, eax
ja 0x140093370
movzx ecx, byte [rbx + 1]
movzx eax, byte [rbx]
shl cx, 8
or cx, ax
cmp cx, r13w
jne 0x14009335c
cmp edx, 0xffffffff
jne 0x140093341
call qword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x140093337
mov edx, 1
mov dword [0x14021bfd8], edx
jmp 0x140093345
xor edx, edx
mov dword [0x14021bfd8], edx
jmp 0x14009335c
test edx, edx
je 0x14009335c
cmp esi, 5
jb 0x14009335c
cmp byte [rbx + 8], 0
ja 0x14009335c
mov r12, rbx
mov r15d, esi
mov r14d, 1
mov eax, 0xfffffffc
lea ecx, [rsi + 4]
sub eax, esi
add rbx, rcx
add ebp, eax
cmp ebp, 4
jae 0x1400932f0
mov r13, qword [rsp + 0xa8]
test r14d, r14d
je 0x14009343c
mov rax, qword [rdi + 0xb00]
lea rdx, [rdi + 0x10c5c]
mov r9, r12
mov dword [rsp + 0x20], r15d
mov rcx, rdi
mov r8d, dword [rax + 0x14]
call fcn.140092b80
cmp eax, 0x4f
jne 0x14009343c
mov eax, dword [rdi + 0x44]
test eax, eax
je 0x1400933f8
lea rdx, [rdi + 0x8b08]
lea rcx, [rdi + 0x10c5c]
call fcn.14009ed90
mov r8, rax
lea rdx, [0x1401fdfb4]
lea rcx, [rdi + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea rdx, [rdi + 0xb08]
mov r9d, 1
mov rcx, rdi
call qword [rdi + 0x10df0]
mov eax, dword [rdi + 0x44]
test eax, eax
lea rcx, [0x1401f067c]
lea r9, [0x1401e9c5c]
cmovne r9, rcx
lea r8d, [r15 - 0xb]
lea rcx, [rdi + 0xb08]
lea rdx, str._compressed_WinNT_security_data_missing___d_bytes__s
call fcn.1400352e0
mov r8d, eax
lea rdx, [rdi + 0xb08]
mov r9d, 1
mov rcx, rdi
call qword [rdi + 0x10df0]
mov esi, dword [rsp + 0xa0]
xor ebp, ebp
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x70]
cmp r13, 0xffffffffffffffff
jne 0x14009348f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str._nCreateFile___error__d_when_trying_set_file_time_n
lea rcx, [rdi + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea r9d, [r13 + 2]
lea rdx, [rdi + 0xb08]
mov rcx, rdi
call qword [rdi + 0x10df0]
jmp 0x140093508
test esi, esi
je 0x1400934ff
test sil, 1
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0xb8]
mov rcx, r13
cmove r9, rbp
lea rdx, [rsp + 0x40]
test sil, 2
cmove r8, rbp
test sil, 4
cmove rdx, rbp
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne 0x1400934ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str._nSetFileTime_failed:__d_n
lea rcx, [rdi + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea rdx, [rdi + 0xb08]
xor r9d, r9d
mov rcx, rdi
call qword [rdi + 0x10df0]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
mov r13, qword [rsp + 0x68]
add rsp, 0x90
pop rdi
ret