Function at 0x1400a2c10
Capabilities:
Write file on windows

Disassembly:
endbr64
push rsi
push rbx
sub rsp, 0x38
mov rsi, qword [0x14041fc80]
mov rax, qword [rsi]
mov qword [rsp + 0x28], rax
xor eax, eax
mov rbx, rcx
cmp edx, 0x4000
je 0x1400a2a10
ja 0x1400a25d0
cmp edx, 0x40
je 0x1400a29e0
jbe 0x1400a25b0
cmp edx, 0x400
je 0x1400a29b0
jbe 0x1400a2570
cmp edx, 0x1000
je 0x1400a2980
cmp edx, 0x2000
jne 0x1400a2538
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x646e6172
mov qword [rcx], rax
mov qword [rcx + 8], 4
mov byte [rcx + 0x14], 0
nop
mov rax, qword [rsp + 0x28]
sub rax, qword [rsi]
jne 0x1400a2b97
mov rax, rbx
add rsp, 0x38
pop rbx
pop rsi
ret
cmp edx, 0x800
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x6e696572
mov qword [rcx], rax
mov dword [rcx + 0x13], 0x7865646e
mov qword [rcx + 8], 7
mov byte [rcx + 0x17], 0
jmp 0x1400a2520
cmp edx, 0x100
je 0x1400a2950
cmp edx, 0x200
jne 0x1400a2630
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x72646461
mov qword [rcx], rax
mov dword [rcx + 0x13], 0x6e616d72
mov qword [rcx + 8], 7
mov byte [rcx + 0x17], 0
jmp 0x1400a2520
cmp edx, 0x20
ja case.0x1400a25c9.3
lea rcx, [0x1402c1d90]
mov edx, edx
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
notrack jmp rax
cmp edx, 0x400000
je 0x1400a2b70
jbe 0x1400a26e0
cmp edx, 0x8000000
je 0x1400a2b20
jbe 0x1400a2698
cmp edx, 0x20000000
je 0x1400a2af0
cmp edx, 0xffffffff
jne 0x1400a2668
lea rax, [rcx + 0x10]
mov byte [rcx + 0x12], 0x6c
mov qword [rcx], rax
mov eax, 0x6c61
mov word [rcx + 0x10], ax
mov qword [rcx + 8], 3
mov byte [rcx + 0x13], 0
jmp 0x1400a2520
cmp edx, 0x80
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov byte [rcx + 0x12], 0x63
mov qword [rcx], rax
mov eax, 0x7072
mov word [rcx + 0x10], ax
mov qword [rcx + 8], 3
mov byte [rcx + 0x13], 0
jmp 0x1400a2520
cmp edx, 0x10000000
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x6e616373
mov qword [rcx], rax
mov qword [rcx + 8], 4
mov byte [rcx + 0x14], 0
jmp 0x1400a2520
cmp edx, 0x2000000
je 0x1400a2ad0
cmp edx, 0x4000000
jne 0x1400a2740
lea rax, [rcx + 0x10]
mov qword [rcx], rax
movabs rcx, 0x6f74736b636f6c62
mov qword [rbx + 0x10], rcx
mov dword [rbx + 0x18], 0x65676172
mov qword [rbx + 8], 0xc
mov byte [rbx + 0x1c], 0
jmp 0x1400a2520
cmp edx, 0x40000
je 0x1400a2aa0
jbe 0x1400a27b0
cmp edx, 0x100000
je 0x1400a2a70
cmp edx, 0x200000
jne 0x1400a2778
lea rax, [rcx + 0x10]
mov r9d, 0x6e6f
mov qword [rcx], rax
movabs rcx, 0x69746164696c6176
mov qword [rbx + 0x10], rcx
mov word [rbx + 0x18], r9w
mov qword [rbx + 8], 0xa
mov byte [rbx + 0x1a], 0
jmp 0x1400a2520
cmp edx, 0x800000
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov qword [rcx], rax
mov ecx, 0x7069
mov word [rbx + 0x10], cx
mov byte [rbx + 0x12], 0x63
mov qword [rbx + 8], 3
mov byte [rbx + 0x13], 0
jmp 0x1400a2520
cmp edx, 0x80000
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov r10d, 0x7471
mov qword [rcx + 8], 2
mov qword [rcx], rax
mov word [rcx + 0x10], r10w
mov byte [rcx + 0x12], 0
jmp 0x1400a2520
cmp edx, 0x10000
je 0x1400a2a38
cmp edx, 0x20000
jne 0x1400a27f0
lea rax, [rcx + 0x10]
mov qword [rcx + 8], 8
mov qword [rcx], rax
movabs rax, 0x746e65766562696c
mov qword [rcx + 0x10], rax
mov byte [rcx + 0x18], 0
jmp 0x1400a2520
cmp edx, 0x8000
jne case.0x1400a25c9.3
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x786f7270
mov qword [rcx], rax
mov byte [rcx + 0x14], 0x79
mov qword [rcx + 8], 5
mov byte [rcx + 0x15], 0
jmp 0x1400a2520
mov r8d, 0x125
lea rdx, str.logging.cpp
lea rcx, [0x1402c1d75]
call qword [sym.imp.msvcrt.dll__assert]
nop dword [rax]
lea rax, [rbx + 0x10]
mov byte [rbx + 0x12], 0x71
mov qword [rbx], rax
mov eax, 0x6d7a
mov word [rbx + 0x10], ax
mov qword [rbx + 8], 3
mov byte [rbx + 0x13], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov dword [rbx + 0x10], 0x636e6562
mov qword [rbx], rax
mov byte [rbx + 0x14], 0x68
mov qword [rbx + 8], 5
mov byte [rbx + 0x15], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov dword [rbx + 0x10], 0x70747468
mov qword [rbx], rax
mov qword [rbx + 8], 4
mov byte [rbx + 0x14], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov dword [rbx + 0x10], 0x706d656d
mov qword [rbx], rax
mov dword [rbx + 0x13], 0x6c6f6f70
mov qword [rbx + 8], 7
mov byte [rbx + 0x17], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov byte [rbx + 0x12], 0x72
mov qword [rbx], rax
mov eax, 0x6f74
mov word [rbx + 0x10], ax
mov qword [rbx + 8], 3
mov byte [rbx + 0x13], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov edx, 0x656e
mov byte [rbx + 0x12], 0x74
mov qword [rbx], rax
mov word [rbx + 0x10], dx
mov qword [rbx + 8], 3
mov byte [rbx + 0x13], 0
jmp 0x1400a2520
lea rax, [rbx + 0x10]
mov qword [rbx + 8], 0
mov qword [rbx], rax
mov byte [rbx + 0x10], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx], rax
movabs rcx, 0x6574616d69747365
mov qword [rbx + 0x10], rcx
mov qword [rbx + 8], 0xb
mov dword [rbx + 0x17], 0x65656665
mov byte [rbx + 0x1b], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx], rax
mov eax, 0x6b63
movabs rcx, 0x6f6c627463706d63
mov qword [rbx + 0x10], rcx
mov word [rbx + 0x18], ax
mov qword [rbx + 8], 0xa
mov byte [rbx + 0x1a], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx], rax
movabs rcx, 0x6f637463656c6573
mov qword [rbx + 0x10], rcx
mov qword [rbx + 8], 0xb
mov dword [rbx + 0x17], 0x736e696f
mov byte [rbx + 0x1b], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx + 8], 8
mov qword [rcx], rax
movabs rax, 0x626474656c6c6177
mov qword [rcx + 0x10], rax
mov byte [rcx + 0x18], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x6e757270
mov qword [rcx], rax
mov byte [rcx + 0x14], 0x65
mov qword [rcx + 8], 5
mov byte [rcx + 0x15], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx], rax
mov eax, 0x6a65
movabs rcx, 0x726c6f6f706d656d
mov qword [rbx + 0x10], rcx
mov word [rbx + 0x18], ax
mov qword [rbx + 8], 0xa
mov byte [rbx + 0x1a], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x6576656c
mov qword [rcx], rax
mov dword [rcx + 0x13], 0x62646c65
mov qword [rcx + 8], 7
mov byte [rcx + 0x17], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov r11d, 0x6264
mov byte [rcx + 0x16], 0
mov qword [rcx], rax
mov dword [rcx + 0x10], 0x6e696f63
mov word [rcx + 0x14], r11w
mov qword [rcx + 8], 6
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov dword [rcx + 0x10], 0x6c697475
mov qword [rcx], rax
mov qword [rcx + 8], 4
mov byte [rcx + 0x14], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov edx, 0x7365
mov qword [rcx], rax
movabs rcx, 0x67616b6361707874
mov qword [rbx + 0x10], rcx
mov word [rbx + 0x18], dx
mov qword [rbx + 8], 0xa
mov byte [rbx + 0x1a], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov qword [rcx], rax
mov ecx, 0x11
call fcn.1402aa8b0
mov qword [rbx + 0x10], 0x10
movabs rdx, 0x636e6f6365727874
movabs rcx, 0x6e6f697461696c69
mov qword [rbx], rax
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov qword [rbx + 8], 0x10
mov byte [rax + 0x10], 0
jmp 0x1400a2520
lea rax, [rcx + 0x10]
mov r8d, 0x3269
mov byte [rcx + 0x12], 0x70
mov qword [rcx], rax
mov word [rcx + 0x10], r8w
mov qword [rcx + 8], 3
mov byte [rcx + 0x13], 0
jmp 0x1400a2520
call fcn.14018c640
nop
nop
nop
endbr64
push rsi
push rbx
sub rsp, 0x38
mov rbx, qword [0x14041fc80]
mov rax, qword [rbx]
mov qword [rsp + 0x28], rax
xor eax, eax
mov rsi, rcx
mov rcx, rdx
call fcn.1400a1b50
mov rdx, rax
shr rax, 0x20
mov qword [rsp + 0x20], rdx
test al, al
je 0x1400a2be1
mov edx, dword [rsp + 0x20]
cmp edx, 2
jle 0x1400a2bf8
xor eax, eax
mov rdx, qword [rsp + 0x28]
sub rdx, qword [rbx]
jne 0x1400a2bfd
add rsp, 0x38
pop rbx
pop rsi
ret
xchg dword [rsi + 0x68], edx
jmp 0x1400a2be1
call fcn.14018c640
nop
nop
nop word cs:[rax + rax]
nop
endbr64
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
mov r13, qword [0x14041fc80]
mov rax, qword [r13]
mov qword [rsp + 0x48], rax
xor eax, eax
mov rsi, rcx
call fcn.14000f770
test eax, eax
jne 0x1400a2ea8
cmp byte [rsi + 0x28], 0
je 0x1400a2e60
cmp qword [rsi + 8], 0
je 0x1400a2c6f
mov r8d, 0x35
lea rdx, str.logging.cpp
lea rcx, str.m_fileout__nullptr
call qword [sym.imp.msvcrt.dll__assert]
cmp byte [rsi + 0x89], 0
jne 0x1400a2db5
mov rbx, qword [rsi + 0x10]
lea r12, [rsi + 0x10]
mov byte [rsi + 0x28], 0
cmp r12, rbx
je 0x1400a2d32
mov r14, qword [fcn.140197860]
lea rdi, [rsi + 0x70]
nop dword [rax]
cmp byte [rsi + 0x89], 0
lea rbp, [rbx + 0x10]
jne 0x1400a2d70
cmp byte [rsi + 0x88], 0
jne 0x1400a2d93
mov rbx, qword [rsi + 0x70]
cmp rbx, rdi
je 0x1400a2ced
nop word [rax + rax]
cmp qword [rbx + 0x20], 0
je 0x1400a2e9e
lea rcx, [rbx + 0x10]
mov rdx, rbp
call qword [rbx + 0x28]
mov rbx, qword [rbx]
cmp rdi, rbx
jne 0x1400a2cd0
sub qword [rsi + 0x20], 1
mov rbx, qword [rsi + 0x10]
mov rcx, rbx
call fcn.140294160
mov rcx, qword [rbx + 0x10]
lea rax, [rbx + 0x20]
cmp rcx, rax
je 0x1400a2d18
mov rax, qword [rbx + 0x20]
lea rdx, [rax + 1]
call fcn.1402aa7f0
mov rcx, rbx
mov edx, 0x30
call fcn.1402aa7f0
mov rbx, qword [rsi + 0x10]
cmp rbx, r12
jne 0x1400a2ca0
cmp byte [rsi + 0x88], 0
jne 0x1400a2e7f
mov ebx, 1
mov rcx, rsi
call fcn.14000fa60
mov rax, qword [rsp + 0x48]
sub rax, qword [r13]
jne 0x1400a2ea3
mov eax, ebx
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rcx, qword [rbx + 0x10]
mov r9, qword [rsi + 8]
mov edx, 1
mov r8, qword [rbx + 0x18]
call sub.msvcrt.dll_fwrite
cmp byte [rsi + 0x88], 0
je 0x1400a2cbe
mov ecx, 1
call r14
mov rcx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
mov r9, rax
mov edx, 1
call sub.msvcrt.dll_fwrite
jmp 0x1400a2cbe
cmp qword [rsi + 0x98], 0
jne 0x1400a2dd9
mov r8d, 0x38
lea rdx, str.logging.cpp
lea rcx, str._m_file_path.empty__
call qword [sym.imp.msvcrt.dll__assert]
lea rcx, [rsi + 0x90]
lea rdx, [0x1402c21c5]
call fcn.1400b07c0
mov qword [rsi + 8], rax
test rax, rax
je 0x1400a2e97
xor edx, edx
mov rcx, rax
lea rbx, [rsp + 0x30]
call sub.msvcrt.dll_setbuf
mov r9, qword [rsi + 8]
mov edx, 1
mov rcx, rbx
mov r8d, 5
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x30], 0xa0a0a0a
mov byte [rsp + 0x34], 0xa
mov qword [rsp + 0x28], 5
mov byte [rsp + 0x35], 0
call sub.msvcrt.dll_fwrite
mov rcx, qword [rsp + 0x20]
cmp rcx, rbx
je 0x1400a2c7c
mov rax, qword [rsp + 0x30]
lea rdx, [rax + 1]
call fcn.1402aa7f0
jmp 0x1400a2c7c
mov r8d, 0x34
lea rdx, str.logging.cpp
lea rcx, str.m_buffering
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x1400a2c4e
mov ecx, 1
call qword [fcn.140197860]
mov rcx, rax
call sub.msvcrt.dll_fflush
jmp 0x1400a2d3f
xor ebx, ebx
jmp 0x1400a2d44
call fcn.1402af760
call fcn.14018c640
mov ecx, eax
call fcn.1402af860
endbr64
mov rbx, rax
jmp 0x1400a2ec9
mov rcx, rsi
call fcn.14000fa60
mov rcx, rbx
call fcn.14018db80
nop
nop word [rax + rax]