Function at 0x14001fa20
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
cmp byte [rcx + 0x39], 1
je 0x14001fd41
test edx, edx
je 0x14001fc86
cmp byte [rcx + 0x64], 1
je 0x14001fd13
cmp byte [rcx + 0x66], 1
mov rsi, rcx
jne 0x14001fbc2
test edx, edx
js 0x14001fa82
mov eax, r8d
and al, 1
mov byte [rsp + 0x2c], al
movzx eax, al
shl rax, 0x20
mov r10d, edx
or r10, rax
mov r11d, 0x23d
mov rax, r9
test r11d, r11d
jne 0x14001fa93
jmp 0x14001fd2f
xor r11d, r11d
xor r10d, r10d
xor eax, eax
test r11d, r11d
je 0x14001fd2f
mov edi, r10d
dec edi
jo 0x14001fd3c
jns 0x14001faa9
add edi, r10d
jo 0x14001fd3c
test edi, edi
js 0x14001fbc2
cmp edi, r10d
jge 0x14001fbc2
mov r10d, edi
cmp byte [rax + r10], 0xa
je 0x14001fae3
nop word cs:[rax + rax]
nop
sub edi, 1
jb 0x14001fbc2
movsxd r10, edi
cmp byte [rax + r10], 0xa
jne 0x14001fad0
mov eax, dword [rcx + 0x60]
test eax, eax
jle 0x14001fb30
mov ebx, r8d
mov ebp, edx
mov r14, r9
mov r9, qword [rcx + 0x48]
test r9, r9
jne 0x14001fb18
mov ecx, dword [rcx + 0x68]
test ecx, ecx
js 0x14001fd3c
call sub.gc.dll_GC_malloc_atomic
mov r9, rax
mov rax, rsi
mov qword [rsi + 0x48], r9
mov eax, dword [rsi + 0x60]
mov rcx, rsi
mov edx, eax
xor r8d, r8d
call fcn.14001b660
mov rcx, rsi
mov r9, r14
mov edx, ebp
mov r8d, ebx
mov dword [rcx + 0x60], 0
inc edi
jo 0x14001fd3c
xor r11d, r11d
cmp edx, edi
mov ebx, edi
jb 0x14001fb77
mov eax, edi
or eax, edx
mov eax, 0
mov r10d, 0
js 0x14001fb7c
mov eax, r8d
and al, 1
mov byte [rsp + 0x30], al
movzx eax, al
shl rax, 0x20
add rax, rbx
mov r11d, 0x23d
mov r10, r9
jmp 0x14001fb7c
xor eax, eax
xor r10d, r10d
test r11d, r11d
je 0x14001fd2f
mov ebp, r8d
mov r15d, edx
mov r14, r9
mov r8, rax
shr r8, 0x20
and r8d, 1
mov edx, eax
mov r9, r10
call fcn.14001b660
test edi, edi
js 0x14001fd2f
mov edx, r15d
sub edx, edi
jl 0x14001fd2f
mov r9, r14
add r9, rbx
mov rcx, rsi
mov r8d, ebp
mov eax, dword [rcx + 0x60]
mov r10d, dword [rcx + 0x68]
cmp edx, r10d
jge 0x14001fc93
mov r8d, r10d
sub r8d, eax
jo 0x14001fd3c
cmp edx, r8d
jle 0x14001fc2f
test eax, eax
jle 0x14001fc28
mov edi, edx
mov rbx, r9
mov r9, qword [rcx + 0x48]
test r9, r9
jne 0x14001fc13
test r10d, r10d
js 0x14001fd3c
mov rcx, r10
call sub.gc.dll_GC_malloc_atomic
mov r9, rax
mov rax, rsi
mov qword [rsi + 0x48], r9
mov eax, dword [rsi + 0x60]
mov rcx, rsi
mov edx, eax
xor r8d, r8d
call fcn.14001b660
mov rcx, rsi
mov r9, rbx
mov edx, edi
mov dword [rcx + 0x60], 0
mov rax, qword [rcx + 0x48]
test rax, rax
jne 0x14001fc59
mov ecx, dword [rcx + 0x68]
test ecx, ecx
js 0x14001fd3c
mov ebx, edx
mov rdi, r9
call sub.gc.dll_GC_malloc_atomic
mov rcx, rsi
mov qword [rsi + 0x48], rax
mov r9, rdi
mov edx, ebx
test edx, edx
js 0x14001fd2f
movsxd rcx, dword [rcx + 0x60]
add rax, rcx
mov r8d, edx
mov rcx, rax
mov edi, edx
mov rdx, r9
call sub.VCRUNTIME140.dll_memcpy
mov eax, edi
add eax, dword [rsi + 0x60]
jo 0x14001fd3c
mov dword [rsi + 0x60], eax
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
test eax, eax
jle 0x14001fcde
mov ebx, r8d
mov edi, edx
mov r14, r9
mov r9, qword [rcx + 0x48]
test r9, r9
jne 0x14001fcc6
test r10d, r10d
js 0x14001fd3c
mov rcx, r10
call sub.gc.dll_GC_malloc_atomic
mov r9, rax
mov rax, rsi
mov qword [rsi + 0x48], r9
mov eax, dword [rsi + 0x60]
mov rcx, rsi
mov edx, eax
xor r8d, r8d
call fcn.14001b660
mov rcx, rsi
mov r9, r14
mov edx, edi
mov r8d, ebx
mov dword [rcx + 0x60], 0
test edx, edx
js 0x14001fd24
and r8b, 1
mov byte [rsp + 0x34], r8b
movzx eax, r8b
shl rax, 0x20
mov edx, edx
or rdx, rax
mov eax, 0x23d
test eax, eax
je 0x14001fd2f
mov r8, rdx
shr r8, 0x20
and r8d, 1
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp fcn.14001b660
xor eax, eax
xor edx, edx
xor r9d, r9d
test eax, eax
jne 0x14001fd08
call fcn.1400053c0
mov rcx, rax
call fcn.140005420
call fcn.140003430
lea rcx, [0x140028b30]
call fcn.14001c4d0
mov rcx, rax
call fcn.140019950
int3