Function at 0x140002130
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.0x140002151
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 0x14000217e
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x140002180
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x1400021d9
test ecx, ecx
jle 0x1400021b9
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 0x1400021d9
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x1400021d9
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
insb byte [rdi], dx
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ca9e
outsd dx, dword cs:[rsi]
insb byte [rdi], dx
pop rsp
push rbp
jae 0x14000ca98
jb 0x14000caa8
pop rsp
insb byte [rdi], dx
insb byte [rdi], dx
and byte [rbp + 0x73], dl
jb 0x14000cab2
pop rsp
imul r12, qword [r11 + 0x72], 0x666f736f
je 0x14000caa6
push rbx
invalid
invalid
invalid
imul esp, dword [rbx + 0x72], 0x666f736f
jb 0x14000cb19
jae 0x14000cb1b
je 0x14000cb0b
je 0x14000cb0b
jb 0x14000cb2b
jo 0x14000cb28
outsb dx, byte [rsi]
je 0x14000cb0d
jb 0x14000cb26
invalid
or eax, 0x6c65640a
insb byte [rdi], dx
and byte [rdx], ah
cmp bl, byte [r13 + r10*2 + 0x73]
jb 0x14000cb8d
jae 0x14000cb77
pop rsp
insb byte [rdi], dx
insb byte [rdi], dx
and byte [rbp + 0x73], dl
jb 0x14000cb97
pop rsp
imul r12, qword [r11 + 0x72], 0x666f736f
imul esp, dword [rbx + 0x72], 0x666f736f
jb 0x14000cb99
jae 0x14000cb9b
outsd dx, dword [rsi]
je 0x14000cb8b
je 0x14000cb8b
push rbx
invalid
insb byte [rdi], dx
and byte [rbp + 0x73], dl
jb 0x14000cbf1
pop rsp
imul r12, qword [r11 + 0x72], 0x666f736f
je 0x14000cbe5
push rbx
invalid
invalid
invalid
jo 0x14000cc05
imul esp, dword [rbx + 0x61], 0x6e6f6974
jae 0x14000cbfe
invalid
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
invalid
jo 0x14000cc53
imul esp, dword [rbx + 0x61], 0x6e6f6974
jae 0x14000cc4c
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
push rax
jb 0x14000cc6a
push 0x65
invalid
je 0x14000cc73
pop rsp
push rbx
jns 0x14000cc77
je 0x14000cc6b
insd dword [rdi], dx
insd dword [rdi], dx
outsb dx, byte [rsi]
js 0x14000cc69
push rax
jb 0x14000cc7f
jo 0x14000cc5f
invalid
jb 0x14000ccbd
jae 0x14000ccbf
je 0x14000ccaf
push rbx
invalid
jo 0x14000ccd2
insb byte [rdi], dx
imul esp, dword [rbx + 0x61], 0x6e6f6974
outsb dx, byte [rsi]
jae 0x14000ccc8
pop rsp
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
pop rsp
push rax
jb 0x14000cce6
push 0x65
invalid
jae 0x14000ccf5
insd dword [rdi], dx
outsb dx, byte [rsi]
js 0x14000cce5
push rax
jb 0x14000ccfb
jo 0x14000ccdb
invalid
and eax, 0x72657375
outsb dx, byte [rsi]
invalid
invalid
je 0x14000cd22
pop rsp
outsd dx, dword [rsi]
invalid
push rax
invalid
imul esp, dword [rbx + 0x72], 0x666f736f
je 0x14000cd09
push rdi
imul ebp, dword [rsi + 0x64], 0x2e73776f
outsd dx, dword [rsi]
jb 0x14000cd5b
je 0x14000cd49
invalid
outsb dx, byte [rsi]
invalid
ja 0x14000cd71
pop rsp
jo 0x14000cd6c
jo 0x14000cd41
invalid
invalid
jb 0x14000cd6c
pop rsp
push r11
jle 0x14000cd47
and r13b, byte cs:[rcx + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000cda0
and al, byte [rbx + 0x3a]
pop rsp
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
pop rsp
jo 0x14000cda2
je 0x14000cd98
push 0x5245575c
push r10
pop r8
sub eax, 0x39333446
sub eax, 0x39333446
xor eax, 0x702e3135
xor eax, 0x702e3135
xor dword [rsi], ebp
jo 0x14000cdb3
and ch, byte [rcx + 0x6c65640a]
and ch, byte [rcx + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000cdd3
pop rsp
pop rsp
pop rdx
outsb dx, byte gs:[rsi]
outsd dx, dword [rsi]
outsb dx, byte [rsi]
imul esi, dword [rbp + riz*2 + 0x2e], 0x22726c63
sub al, 0xd
or ah, byte [rbp + riz*2 + 0x6c]
invalid
and ch, byte [rcx + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000cdf7
pop rsp
pop rsp
insd dword [rdi], dx
outsd dx, dword [rsi]
outsb dx, byte [rsi]
imul esi, dword [rdi + rbp*2 + 0x72], 0x464e502e
and ch, byte [rcx + 0x6c65640a]
insb byte [rdi], dx
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ce1a
pop rsp
pop rsp
outsb dx, byte [rsi]
je 0x14000ce26
ja 0x14000ce1b
imul bp, word [rbp + 0x70], 0x502e
and r13b, byte [r9 + 0x6c65640a]
imul ebp, dword [rbp + 0x70], 0x464e502e
and ch, byte [rcx + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ce40
pop rsp
pop rsp
insd dword [rdi], dx
jae 0x14000ce45
outsd dx, dword [rsi]
jb 0x14000ce4c
jae 0x14000ce08
push rax
and r13b, byte [r9 + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ce63
pop rsp
pop rsp
ja 0x14000ce64
imul esp, dword [rcx + 0x63], 0x502e6970
and r13b, byte [r9 + 0x6c65640a]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ce86
and al, byte [rbx + 0x3a]
pop rsp
push rdi
imul ebp, dword [rsi + 0x64], 0x5c73776f
pop rsp
pop rsp
imul esp, dword [rcx + 0x4c], 0x32535350
imul ebx, dword [rdi + 0x47], 0x324f4950
push rax
push rax
push rbx
push rbx
xor ch, byte [rcx + 0x5f]
push r8
xor r11b, byte [r15 + 0x53]
pop rdi
push rbx
push rax
and r13b, byte [r9 + 0x6c65640a]
and byte [rdx], ah
and al, byte [rbx + 0x3a]
pop rsp
push rdi
invalid
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000ceb4
jae 0x14000ce9e
pop rsp
pop rsp
jo 0x14000ce7d
jae 0x14000cec2
cmp bl, byte [rdi + rdx*2 + 0x69]
and ch, byte [rcx + 0x6c65640a]
pop rsp
sub al, 0xd
or ah, byte [rbp + riz*2 + 0x6c]
and byte [rdx], ah
cmp bl, byte [r15 + r10*2 + 0x69]
outsb dx, byte [rsi]
outsd dx, dword fs:[rsi]
ja 0x14000cf47
pop rsp
push rbx
jns 0x14000cf4b
insd dword [rdi], dx