Function at 0x140002b30
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.0x140002b51
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 0x140002b7e
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x140002b80
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x140002bd9
test ecx, ecx
jle 0x140002bb9
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 0x140002bd9
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x140002bd9
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
stosd dword [rdi], eax
add byte [0xc94911cf], bl
stosd dword [rdi], eax
or byte [0xc94911d6], bl
stosd dword [rdi], eax
push rsp
sbb eax, 0x89480000
stosd dword [rdi], eax
xor byte [0xc94911e4], bl
stosd dword [rdi], eax
cmp byte [0xc3c811eb], bl
sbb rax, 0xffffffffffff0000
jg 0x140011272
mov dword [rbx + 0x1d44], 0x7f7fffff
mov dword [rbx + 0x1d40], 0x7f7fffff
mov qword [rbx + 0x1d4c], rbp
mov dword [rbx + 0x1d58], ebp
mov qword [rbx + 0x1d84], rbp
sbb eax, 0x89480000
stosd dword [rdi], eax
invalid
sbb eax, 0x89480000
stosd dword [rdi], eax
push 0xffffffffc700001d
cmp dword [rax + 0x1d], 0
add bh, bh
invalid
jg 0x1400112b2
mov dword [rbx + 0x1d74], 0x7f7fffff
jg 0x1400112bc
mov dword [rbx + 0x1d70], 0x7f7fffff
jg 0x1400112c6
mov qword [rbx + 0x1d7c], rbp
mov dword [rbx + 0x1d88], ebp
mov qword [rbx + 0x1db4], rbp
mov qword [rbx + 0x1d90], rbp
mov qword [rbx + 0x1d98], rbp
mov dword [rbx + 0x1da8], 0x7f7fffff
mov dword [rbx + 0x1da4], 0x7f7fffff
mov dword [rbx + 0x1da0], 0x7f7fffff
jg 0x14001123b
and dword [rbp + rbx - 0x10000], 0x7f
jg 0x140011245
and dword [rax - 0xffffe3], 0xffffffff
jg 0x140011306
mov qword [rbx + 0x1dac], rbp
mov dword [rbx + 0x1db8], ebp
mov qword [rbx + 0x1e44], rbp
mov qword [rbx + 0x1e38], rbp
mov dword [rbx + 0x1e40], ebp
movups xmmword [rbx + 0x1e50], xmm0
movups xmmword [rbx + 0x1e60], xmm0
mov word [rbx + 0x1e70], ax
mov dword [rbx + 0x1e4c], 0xffffffff
mov byte [rbx + 0x1e72], al
mov qword [rbx + 0x1e78], rbp
add bh, al
or dword [rsi + rbx], 0
dec dword [rax + 0x1e7283]
add byte [rax - 0x77], cl
stosd dword [rdi], eax
js 0x1400112f0
add byte [rax], al
mov qword [rbx + 0x1e80], rbp
mov qword [rbx + 0x1ea8], rbp
mov qword [rbx + 0x1eb0], rbp
mov qword [rbx + 0x1ed0], rbp
mov qword [rbx + 0x1ed8], rbp
mov qword [rbx + 0x1ee0], rbp
mov qword [rbx + 0x1ee8], rbp
mov dword [rbx + 0x1ef0], ebp
mov qword [rbx + 0x1ef8], rbp
mov qword [rbx + 0x1f00], rbp
mov qword [rbx + 0x1f08], rbp
mov qword [rbx + 0x1f10], rbp
mov qword [rbx + 0x1f18], rbp
mov qword [rbx + 0x1f20], rbp
mov qword [rbx + 0x1f30], rbp
mov qword [rbx + 0x1f38], rbp
mov qword [rbx + 0x1f40], rbp
mov qword [rbx + 0x1f48], rbp
mov dword [rbx + 0x1f50], ebp
mov qword [rbx + 0x1f58], rbp
mov qword [rbx + 0x1f60], rbp
mov qword [rbx + 0x1f68], rbp
mov qword [rbx + 0x1f70], rbp
mov qword [rbx + 0x1f78], rbp
lea rcx, [rbx + 0x1f80]
mov qword [rcx + 0x10], rbp
mov qword [rcx + 0x18], rbp
mov qword [rcx + 0x20], rbp
mov qword [rcx + 0x28], rbp
mov qword [rcx + 0x30], rbp
mov qword [rcx + 0x38], rbp
xor edx, edx
mov r8d, 0xe98
call 0x14006fc9f
nop
mov qword [rbx + 0x2e18], rbp
mov qword [rbx + 0x2e20], rbp
mov qword [rbx + 0x2e30], rbp
mov qword [rbx + 0x2e38], rbp
mov qword [rbx + 0x2e40], rbp
mov qword [rbx + 0x2e48], rbp
mov qword [rbx + 0x2e28], rbp
mov dword [rbx + 0x2e6a], 0xffff003f
mov qword [rbx + 0x2e50], rbp
mov qword [rbx + 0x2e58], rbp
mov qword [rbx + 0x2e60], rbp
mov word [rbx + 0x2e68], bp
mov byte [rbx + 0x2e6e], 0
mov qword [rbx + 0x2e70], 0x3f800000
mov qword [rbx + 0x2e78], rbp
xor eax, eax
mov word [rbx + 0x2e80], ax
mov qword [rbx + 0x2eac], rbp
mov qword [rbx + 0x2ea4], rbp
mov qword [rbx + 0x2ed0], rbp
mov qword [rbx + 0x2ed8], rbp
mov qword [rbx + 0x2ee0], rbp
mov qword [rbx + 0x2ee8], rbp
mov qword [rbx + 0x2ef0], rbp
mov qword [rbx + 0x2ef8], rbp
mov qword [rbx + 0x2f08], rbp
mov qword [rbx + 0x2f10], rbp
mov qword [rbx + 0x2f18], rbp
mov qword [rbx + 0x2f20], rbp
mov qword [rbx + 0x2f28], rbp
mov qword [rbx + 0x2f30], rbp
mov qword [rbx + 0x2f38], rbp
mov qword [rbx + 0x2f40], rbp
mov qword [rbx + 0x2f48], rbp
mov qword [rbx + 0x2f50], rbp
mov qword [rbx + 0x2f70], rbp
mov qword [rbx + 0x2f78], rbp
mov dword [rbx + 0x2fac], 0x1000000
mov byte [rbx + 0x2fb0], 1
mov qword [rbx + 0x2fb4], 0xffffffffffffffff
mov word [rbx], 0x100
mov qword [rbx + 0x1978], rbp
mov qword [rbx + 0x1980], rbp
mov rax, qword [0x140105360]
test rax, rax
je 0x1400114ed
stosd dword [rdi], eax
invalid
inc dword [rax + 0x3b4]
mov ecx, 0x488
call qword [0x140071960]
mov rdi, rax
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x88], rdi
test rdi, rdi
je 0x140011585
mov qword [rdi + 0x30], rbp
mov qword [rdi + 0x38], rbp
mov qword [rdi + 0x40], rbp
mov qword [rdi + 0x48], rbp
mov qword [rdi + 0x50], rbp
mov qword [rdi + 0x58], rbp
mov qword [rdi + 0x60], rbp
mov qword [rdi + 0x68], rbp
lea rax, [rdi + 0x70]
mov ecx, 0x40
nop dword [rax]
mov qword [rax + 8], rbp
mov qword [rax], rbp
lea rax, [rax + 0x10]
sub rcx, 1
jne 0x140011550
xor edx, edx
mov r8d, 0x488
mov rcx, rdi
call 0x14006fc9f
mov dword [rdi + 0x14], 1
mov qword [rdi + 0x47c], 0xffffffffffffffff
jmp 0x140011588
mov rdi, rbp
mov qword [rbx + 0xa8], rdi
mov qword [rbx + 0x1a60], rbp
mov dword [rbx + 0x1a68], ebp
mov qword [rbx + 0x1a6c], 0xffffffffffffffff
mov dword [rbx + 0x1a75], 0
mov byte [rbx + 0x1a74], 0
mov dword [rbx + 0x1a7c], ebp
mov qword [rbx + 0x1a80], rbp
mov dword [rbx + 0x1ad8], ebp
mov qword [rbx + 0x1ae0], rbp
mov qword [rbx + 0x1ae8], rbp
mov qword [rbx + 0x1af0], rbp
mov qword [rbx + 0x1af8], rbp
mov qword [rbx + 0x1b00], rbp
mov qword [rbx + 0x1b08], rbp
mov qword [rbx + 0x1b18], rbp
mov qword [rbx + 0x1b20], rbp
mov qword [rbx + 0x1b28], rbp
mov qword [rbx + 0x1b30], rbp
mov qword [rbx + 0x1b38], rbp
mov word [rbx + 0x1b40], 0
mov byte [rbx + 0x1b42], 0
mov qword [rbx + 0x1b44], rbp
mov qword [rbx + 0x1b50], rbp
mov dword [rbx + 0x1b58], 0xbf800000
mov dword [rbx + 0x1b5c], 0xbf800000
mov qword [rbx + 0x1b60], rbp
mov qword [rbx + 0x1b68], rbp
mov dword [rbx + 0x1b70], ebp
mov word [rbx + 0x1b74], 0
mov qword [rbx + 0x1b78], rbp
mov qword [rbx + 0x1b80], rbp
mov qword [rbx + 0x1ca0], rbp
mov qword [rbx + 0x1cb8], rbp
mov qword [rbx + 0x1cb0], rbp
mov qword [rbx + 0x1ca8], rbp
mov qword [rbx + 0x1ccc], rbp
mov qword [rbx + 0x1cc4], rbp
mov dword [rbx + 0x1cc0], ebp
mov qword [rbx + 0x1cd4], rbp
mov qword [rbx + 0x1cdc], rbp
mov qword [rbx + 0x1ce4], rbp
mov dword [rbx + 0x1cec], ebp
mov dword [rbx + 0x1cf0], 0x7fffffff
mov dword [rbx + 0x1cf4], 0x10000
mov word [rbx + 0x1cf8], 0
mov byte [rbx + 0x1cfa], 0
mov dword [rbx + 0x1cfc], ebp
mov byte [rbx + 0x1d10], 0
mov qword [rbx + 0x1d14], rbp
mov dword [rbx + 0x1d1c], ebp
mov qword [rbx + 0x1d24], 0xffffffffffffffff
mov dword [rbx + 0x1d20], 0xffffffff
mov qword [rbx + 0x1dc0], rbp
mov dword [rbx + 0x1dc8], ebp
mov qword [rbx + 0x1de0], rbp
mov qword [rbx + 0x1dd8], rbp
mov qword [rbx + 0x1dd0], rbp
mov qword [rbx + 0x1de8], rbp
mov byte [rbx + 0x1df0], 0
mov qword [rbx + 0x1e00], rbp
mov qword [rbx + 0x1df8], rbp
mov dword [rbx + 0x1e0c], 0x7fffffff
mov dword [rbx + 0x1e08], 0x7fffffff
mov dword [rbx + 0x1e14], 0x7fffffff
mov dword [rbx + 0x1e10], 0x7fffffff
mov byte [rbx + 0x1e18], 0
mov qword [rbx + 0x1e1c], rbp
mov word [rbx + 0x1e25], 0
mov byte [rbx + 0x1e24], 0
mov dword [rbx + 0x1e28], ebp
mov qword [rbx + 0x1e2c], 0xffffffffffffffff
mov qword [rbx + 0x1e88], rbp
mov qword [rbx + 0x1e90], rbp
mov dword [rbx + 0x1e98], ebp
mov dword [rbx + 0x1e9c], 0xffffffff
mov dword [rbx + 0x1ea0], ebp
xorps xmm0, xmm0
movups xmmword [rbx + 0x1eb8], xmm0
mov qword [rbx + 0x1ec8], rbp
mov qword [rbx + 0x1f28], rbp
mov qword [rbx + 0x1f78], rbp
mov dword [rbx + 0x2e88], ebp
mov qword [rbx + 0x2e8c], 0xa900000
mov dword [rbx + 0x2e94], ebp
mov dword [rbx + 0x2ea0], 0x7f7fffff
mov dword [rbx + 0x2e9c], 0x7f7fffff
mov dword [rbx + 0x2e98], 0x7f7fffff
mov dword [rbx + 0x2eb4], ebp
mov word [rbx + 0x2eb8], 0
mov dword [rbx + 0x2ebc], ebp
mov qword [rbx + 0x2ec0], 0x3c23d70a
mov dword [rbx + 0x2ec8], ebp
mov dword [rbx + 0x2ecc], 0x3f000000
mov dword [rbx + 0x2ef8], 0x7f7fffff
mov dword [rbx + 0x2efc], 0x7f7fffff
mov dword [rbx + 0x2ef0], 0x7f7fffff
mov dword [rbx + 0x2ef4], 0x7f7fffff
mov word [rbx + 0x2f00], 0x2e
mov dword [rbx + 0x2f04], ebp
mov dword [rbx + 0x2f58], ebp
mov byte [rbx + 0x2f5c], 0
mov dword [rbx + 0x2f60], ebp
mov qword [rbx + 0x2f88], rbp
mov qword [rbx + 0x2f80], rbp
mov qword [rbx + 0x2f68], rbp
mov dword [rbx + 0x2f90], 0x7f7fffff
mov byte [rbx + 0x2f94], 0
mov dword [rbx + 0x2f98], ebp
mov dword [rbx + 0x2fa0], 2
mov dword [rbx + 0x2f9c], 2
mov byte [rbx + 0x2fa4], 0
mov dword [rbx + 0x2fa8], ebp
lea rcx, [rbx + 0x2fbc]
xor edx, edx
mov r8d, 0x1e0
call 0x14006fc9f
mov qword [rbx + 0x319c], rbp
mov qword [rbx + 0x31a8], 0xffffffffffffffff
mov dword [rbx + 0x31a4], 0xffffffff
lea rcx, [rbx + 0x31b0]
xor edx, edx
mov r8d, 0xc01
call 0x14006fc9f
nop
mov rax, rbx
mov rbx, qword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm9, xmmword [rsp + 0x20]
add rsp, 0x60
pop rdi
pop rsi
pop rbp
ret