Function at 0x140020710
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x90]
movabs rsi, 0x657220677562206c
movabs rbx, 0x6c75662074696d62
movabs r9, 0x756f6e6520746f6e
movabs r10, 0x6563617073206867
movabs r11, 0x726f6620726f6620
movabs r12, 0x617078652074616d
movabs r14, 0x5028206e6f69736e
movabs r15, 0x757320657361656c
mov qword [rbp - 0x38], rsi
sub rdx, rcx
movabs rsi, 0x2f2f3a7370747468
mov qword [rbp - 0x40], rbx
lea rax, [rdx + 0x78]
movabs rbx, 0x2074612074726f70
mov qword [rbp - 0x28], rsi
and rax, 0xfffffffffffffff0
movabs rsi, 0x736775622f67726f
mov qword [rbp - 0x18], rsi
movabs rsi, 0x202020200a3a29
mov qword [rbp - 0x30], rbx
movabs rbx, 0x2e756e672e636367
mov qword [rbp - 0x20], rbx
movabs rbx, 0x2f736775622f6772
mov qword [rbp - 0xf], rsi
mov rsi, rdx
mov qword [rbp - 0x70], r9
mov qword [rbp - 0x68], r10
mov qword [rbp - 0x60], r11
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x17], rbx
call fcn.140014110
movabs rdx, 0x657220677562206c
movdqa xmm0, xmmword [rbp - 0x20]
sub rsp, rax
mov r8, rsi
movabs rax, 0x6c75662074696d62
mov qword [rsp + 0x50], rax
lea rbx, [rsp + 0x20]
movabs rax, 0x2074612074726f70
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x58], rdx
movabs rdx, 0x2f2f3a7370747468
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x68], rdx
mov rdx, rcx
mov rcx, rax
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], r15
movaps xmmword [rsp + 0x70], xmm0
call sub.msvcrt.dll_memcpy
mov rcx, rbx
mov byte [rsp + rsi + 0x88], 0
call fcn.1400b9330
nop
nop
nop
push rdi
push rsi
push rbx
sub rsp, 0x30
cmp byte [0x1400bdef0], 0
jne 0x140020813
mov byte [0x1400bdef0], 1
call fcn.1400b7a10
test rax, rax
je 0x1400207e8
mov rbx, qword [rax + 8]
xor eax, eax
lea r9, [rsp + 0x2c]
cmp byte [rbx], 0x2a
mov dword [rsp + 0x2c], 0xffffffff
sete al
xor r8d, r8d
xor edx, edx
add rbx, rax
mov rcx, rbx
call fcn.14000d8f0
mov ecx, 2
mov rsi, qword [fcn.14001d4e0]
mov rdi, rax
call rsi
mov edx, 1
lea rcx, str.terminate_called_after_throwing_an_instance_of_
mov r8d, 0x30
mov r9, rax
call sub.msvcrt.dll_fwrite
mov edx, dword [rsp + 0x2c]
mov ecx, 2
test edx, edx
je 0x1400207d9
call rsi
mov rcx, rbx
mov rdx, rax
call sub.msvcrt.dll_fputs
mov ecx, 2
call rsi
mov r8d, 2
mov edx, 1
lea rcx, [0x1400be451]
mov r9, rax
call sub.msvcrt.dll_fwrite
mov eax, dword [rsp + 0x2c]
test eax, eax
jne 0x1400b8237
jmp 0x1400b822f
call rsi
mov rcx, rdi
mov rdx, rax
call sub.msvcrt.dll_fputs
jmp 0x1400207a7
mov ecx, 2
call qword [fcn.14001d4e0]
mov r8d, 0x2d
mov edx, 1
lea rcx, str.terminate_called_without_an_active_exception_n
mov r9, rax
call sub.msvcrt.dll_fwrite
nop
jmp 0x1400b822a
mov ecx, 2
call qword [fcn.14001d4e0]
mov r8d, 0x1d
mov edx, 1
lea rcx, str.terminate_called_recursively_n
mov r9, rax
call sub.msvcrt.dll_fwrite
call sub.msvcrt.dll_abort
nop
nop
nop
push rbx
sub rsp, 0x20
lea rax, [0x1400cd2f0]
mov qword [rcx], rax
mov rbx, rcx
call fcn.1400b1030
mov edx, 8
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp 0x1400b77a0
jmp fcn.1400b7790