Function at 0x140016b00
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
push rbx
push rbp
push r14
sub rsp, 0x50
cmp byte [rcx + 0x88], 0
mov rbx, rdx
mov rbp, rcx
mov r14, rdx
je 0x140016dc7
movzx edx, byte [rdx]
mov qword [rax + 0x18], r12
movzx r12d, r8b
shl r12, 6
add r12, rcx
test dl, dl
je 0x140016d8e
mov qword [rax + 8], rsi
lea rcx, [0x14001c48c]
mov qword [rax + 0x10], rdi
mov qword [rax - 0x20], r13
mov r13d, 0x7fffffff
mov qword [rax - 0x28], r15
lea r15, str.quot
nop
lea eax, [rdx - 1]
cmp al, 0x3e
ja 0x140016d3e
movzx eax, dl
cmp byte [rax + r12 + 0x8a], 0
je 0x140016d3e
cmp rbx, r14
jae 0x140016be6
mov r9, qword [rbp + 0x78]
mov rax, r14
sub rax, rbx
cmp rax, r13
cmova eax, r13d
movsxd rsi, eax
test r9, r9
je 0x140016bae
mov r8, rsi
mov edx, 1
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
jmp 0x140016bd3
lea rcx, [rbp + 0x110]
mov edx, eax
call fcn.1400179b0
mov r8, rsi
mov rdx, rbx
mov rdi, rax
lea rcx, [rax - 1]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi - 1], 0
add rbx, rsi
cmp rbx, r14
jb 0x140016b82
movzx edx, byte [r14]
lea rcx, [0x14001c48c]
cmp dl, 0x20
jge 0x140016c66
movsx eax, dl
lea rcx, [rsp + 0x20]
movzx r8d, al
lea rdx, str.x_02X_
call fcn.140013640
lea rax, [rsp + 0x20]
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x140016c10
mov r9, qword [rbp + 0x78]
test r9, r9
je 0x140016c3a
mov r8, rsi
lea rcx, [rsp + 0x20]
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
jmp 0x140016d34
lea rcx, [rbp + 0x110]
mov edx, esi
call fcn.1400179b0
mov r8, rsi
lea rdx, [rsp + 0x20]
mov rdi, rax
lea rcx, [rax - 1]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi - 1], 0
jmp 0x140016d34
xor edi, edi
lea rax, [0x14001c43c]
nop
cmp byte [rax], dl
je 0x140016c85
inc rdi
add rax, 0x10
cmp rax, rcx
jl 0x140016c70
jmp 0x140016d3b
mov rdx, qword [rbp + 0x78]
test rdx, rdx
je 0x140016c9b
mov ecx, 0x26
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
jmp 0x140016cb2
lea rcx, [rbp + 0x110]
mov edx, 1
call fcn.1400179b0
mov word [rax - 1], 0x26
mov r9, qword [rbp + 0x78]
add rdi, rdi
movsxd rdx, dword [r15 + rdi*8 + 8]
mov r15, qword [r15 + rdi*8]
mov rsi, rdx
test r9, r9
je 0x140016cdd
mov r8, rdx
mov rcx, r15
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
jmp 0x140016d00
lea rcx, [rbp + 0x110]
call fcn.1400179b0
mov r8, rsi
mov rdx, r15
mov rdi, rax
lea rcx, [rax - 1]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi - 1], 0
mov rdx, qword [rbp + 0x78]
test rdx, rdx
je 0x140016d16
mov ecx, 0x3b
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
jmp 0x140016d2d
lea rcx, [rbp + 0x110]
mov edx, 1
call fcn.1400179b0
mov word [rax - 1], 0x3b
lea r15, str.quot
lea rcx, [0x14001c48c]
inc rbx
movzx edx, byte [r14 + 1]
inc r14
test dl, dl
jne 0x140016b60
mov r15, qword [rsp + 0x40]
cmp rbx, r14
jae 0x140016d7f
mov r9, qword [rbp + 0x78]
sub r14, rbx
cmp r14, r13
cmova r14d, r13d
movsxd rsi, r14d
test r9, r9
je 0x140016d9f
mov r8, rsi
mov edx, 1
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
mov r12, qword [rsp + 0x80]
add rsp, 0x50
pop r14
pop rbp
pop rbx
ret
lea rcx, [rbp + 0x110]
mov edx, r14d
call fcn.1400179b0
mov r8, rsi
mov rdx, rbx
mov rdi, rax
lea rcx, [rax - 1]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi - 1], 0
jmp 0x140016d7f
add rsp, 0x50
pop r14
pop rbp
pop rbx
jmp fcn.140013860