Function at 0x140023c20
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r12
push rdi
push rsi
push rbx
sub rsp, 0x90
lea rbp, [rsp + 0x90]
movabs rbx, 0x657220677562206c
movabs r10, 0x756f6e6520746f6e
movabs r11, 0x6563617073206867
movabs rsi, 0x726f6620726f6620
movabs rdi, 0x617078652074616d
movabs r14, 0x5028206e6f69736e
movabs r15, 0x757320657361656c
mov r9, rcx
mov qword [rbp - 0x38], rbx
movabs rcx, 0x6c75662074696d62
movabs rbx, 0x2f2f3a7370747468
sub rdx, r9
mov qword [rbp - 0x40], rcx
movabs rcx, 0x2074612074726f70
mov qword [rbp - 0x30], rcx
lea rax, [rdx + 0x78]
movabs rcx, 0x2e756e672e636367
mov qword [rbp - 0x28], rbx
and rax, 0xfffffffffffffff0
movabs rbx, 0x736775622f67726f
mov qword [rbp - 0x20], rcx
movabs rcx, 0x202020200a3a292f
mov qword [rbp - 0x18], rbx
mov rbx, rdx
mov qword [rbp - 0x70], r10
mov qword [rbp - 0x68], r11
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x10], rcx
mov byte [rbp - 8], 0
call fcn.14000bac0
movabs rdx, 0x657220677562206c
sub rsp, rax
mov r8, rbx
movabs rax, 0x6c75662074696d62
mov qword [rsp + 0x58], rdx
lea r12, [rsp + 0x20]
movabs rdx, 0x2f2f3a7370747468
mov qword [rsp + 0x50], rax
movabs rax, 0x2074612074726f70
mov qword [rsp + 0x68], rdx
movabs rdx, 0x736775622f67726f
mov qword [rsp + 0x60], rax
movabs rax, 0x2e756e672e636367
mov qword [rsp + 0x78], rdx
mov rdx, r9
mov qword [rsp + 0x80], rcx
lea rcx, [rsp + 0x88]
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x70], rax
call sub.msvcrt.dll_memcpy
mov rcx, r12
mov byte [rsp + rbx + 0x88], 0
call fcn.1400b76c0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push r13
push r12
push rbx
sub rsp, 0x30
cmp byte [0x1400bbeb0], 0
jne 0x140023d2a
mov byte [0x1400bbeb0], 1
call fcn.1400b6870
test rax, rax
je 0x140023d00
mov r12, qword [rax + 8]
xor eax, eax
lea r9, [rsp + 0x2c]
cmp byte [r12], 0x2a
mov dword [rsp + 0x2c], 0xffffffff
sete al
xor r8d, r8d
xor edx, edx
add r12, rax
mov rcx, r12
call fcn.14000a990
mov ecx, 2
mov rbx, qword [fcn.140020fd0]
mov r13, rax
call rbx
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 0x140023cf1
call rbx
mov rcx, r12
mov rdx, rax
call sub.msvcrt.dll_fputs
mov ecx, 2
call rbx
mov r8d, 2
mov edx, 1
lea rcx, [0x1400bd971]
mov r9, rax
call sub.msvcrt.dll_fwrite
mov eax, dword [rsp + 0x2c]
test eax, eax
jne 0x140023cec
mov rcx, r13
call fcn.140020938
call fcn.1400b7050
call rbx
mov rcx, r13
mov rdx, rax
call sub.msvcrt.dll_fputs
jmp 0x140023cbb
mov ecx, 2
call qword [fcn.140020fd0]
mov r8d, 0x2d
mov edx, 1
lea rcx, str.terminate_called_without_an_active_exception_n
mov r9, rax
call sub.msvcrt.dll_fwrite
call sub.msvcrt.dll_abort
mov ecx, 2
call qword [fcn.140020fd0]
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
sub rdx, 1
mov rcx, rax
jne 0x140023dbf
call fcn.1400b66c0
mov rcx, rax
mov rax, qword [rax]
call qword [rax + 0x10]
mov ecx, 2
mov r12, rax
call rbx
mov r9, rax
mov r8d, 0xb
mov edx, 1
lea rcx, str.__what__:
call sub.msvcrt.dll_fwrite
mov ecx, 2
call rbx
mov rdx, rax
mov rcx, r12
call sub.msvcrt.dll_fputs
mov ecx, 2
call rbx
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
call fcn.1400b68d0
jmp 0x140023d25
call fcn.1400b66c0
call fcn.1400b68d0
jmp 0x140023d25