Function at 0x14004f770
Capabilities:
Write file on windows

Disassembly:
push rbx
push rdi
push r15
sub rsp, 0x20
cmp qword [rcx + 0x68], 0
mov rbx, r8
mov r15, rdx
mov rdi, rcx
je case.default.0x14004f791
add rsp, 0x20
pop r15
pop rdi
pop rbx
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsputn_char_const____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x40]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], rsi
mov rsi, rbx
mov qword [rsp + 0x58], r14
mov r9, qword [rax]
test r9, r9
je 0x14004f7be
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x14004f7c0
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x14004f819
test ecx, ecx
jle 0x14004f7f9
cmp rbx, rbp
mov rcx, r9
cmovl rbp, rbx
mov r8, rbp
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rdi + 0x58]
add r15, rbp
sub rbx, rbp
sub dword [rax], ebp
mov rcx, qword [rdi + 0x40]
movsxd rax, ebp
add qword [rcx], rax
test rbx, rbx
jle 0x14004f819
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x14004f819
mov r8, rbx
mov edx, 1
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
sub rbx, rax
mov r14, qword [rsp + 0x58]
sub rsi, rbx
mov rbp, qword [rsp + 0x40]
mov rax, rsi
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r15
pop rdi
pop rbx
ret
add al, 0
call 0x140184bf0
or dword [r15 + 0xfa4], 0x80
mov r9d, dword [r15 + 0xfa4]
movabs rbp, 0xa3d70a3d70a3d70b
or edx, edi
movabs dword [0xc1f641a3d70a3d70], eax
invalid
je 0x1401a538d
mov rcx, qword [r15 + 0xfb8]
test rcx, rcx
jle 0x1401a538d
mov r8, qword [r15 + 0xf80]
mov rax, r8
cqo
idiv rcx
mov rsi, rax
cmp r8, 0x2710
jle 0x1401a5376
mov rax, rbp
imul r8
lea rcx, [r8 + rdx]
sar rcx, 6
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov rax, qword [r15 + 0xf90]
cqo
idiv rcx
jmp 0x1401a5388
test r8, r8
jle 0x1401a538d
imul rax, qword [r15 + 0xf90], 0x64
cqo
idiv r8
mov qword [rsp + 0x70], rax
and al, 0x70
test r9b, 0x40
je 0x1401a53f7
mov rcx, qword [r15 + 0xfb0]
test rcx, rcx
jle 0x1401a53f7
mov r8, qword [r15 + 0xf78]
mov rax, r8
cqo
idiv rcx
mov rdi, rax
cmp r8, 0x2710
jle 0x1401a53e0
mov rax, rbp
imul r8
lea rcx, [r8 + rdx]
sar rcx, 6
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov rax, qword [r15 + 0xf88]
cqo
idiv rcx
jmp 0x1401a53f2
test r8, r8
jle 0x1401a53f7
imul rax, qword [r15 + 0xf88], 0x64
cqo
idiv r8
mov qword [rsp + 0x78], rax
cmp rsi, rdi
lea rcx, [rsp + 0x80]
cmovg rdi, rsi
mov rdx, rdi
sub rdx, rbx
test rdi, rdi
cmovle rdx, r13
call 0x1401a55f0
mov rdx, rdi
lea rcx, [rsp + 0xa0]
call 0x1401a55f0
mov rdx, rbx
lea rcx, [rsp + 0x90]
call 0x1401a55f0
mov eax, dword [r15 + 0xfa4]
test al, 0x20
invalid
je 0x1401a544c
mov rcx, qword [r15 + 0xf80]
jmp 0x1401a5453
mov rcx, qword [r15 + 0xf90]
test al, 0x40
je 0x1401a5467
mov rax, qword [r15 + 0xf78]
mov rdx, qword [r15 + 0xf88]
jmp 0x1401a5471
mov rax, qword [r15 + 0xf88]
mov rdx, rax
mov r9, qword [r15 + 0xf90]
lea r12, [rax + rcx]
add r9, rdx
cmp r12, 0x2710
jle 0x1401a54aa
mov rax, rbp
imul r12
mov rax, r9
lea r8, [r12 + rdx]
cqo
sar r8, 6
mov rcx, r8
shr rcx, 0x3f
add r8, rcx
idiv r8
jmp 0x1401a54b8
test r12, r12
jle 0x1401a54bb
imul rax, r9, 0x64
cqo
idiv r12
mov r13, rax
mov rcx, qword [r15 + 0xf98]
lea rdx, [rsp + 0xe2]
call 0x1401a4eb0
mov rcx, qword [r15 + 0xfb8]
lea rdx, [rsp + 0xd8]
mov rsi, rax
call 0x1401a4eb0
mov rcx, qword [r15 + 0xfb0]
lea rdx, [rsp + 0xce]
mov r14, rax
call 0x1401a4eb0
mov rcx, qword [r15 + 0xf90]
lea rdx, [rsp + 0xba]
mov rbp, rax
call 0x1401a4eb0
mov rcx, qword [r15 + 0xf88]
lea rdx, [rsp + 0xb0]
mov rdi, rax
call 0x1401a4eb0
lea rdx, [rsp + 0xc4]
mov rcx, r12
mov rbx, rax
call 0x1401a4eb0
mov rcx, qword [r15 + 0x668]
lea rdx, [0x1401eb958]
mov qword [rsp + 0x68], rsi
mov r9, rax
lea rax, [rsp + 0x80]
mov r8, r13
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call 0x140184bf0
mov rcx, qword [r15 + 0x668]
call qword [0x1401d9150]
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call 0x1401d29c0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret