Function at 0x14004bb30
Capabilities:
Print debug messages
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x4a8
mov rsi, rcx
mov rax, qword [0x1401b1028]
xor rax, rsp
mov qword [rsp + 0x4a0], rax
movabs r13, 0x7fffffffffffffef
lea rax, [0x140186288]
mov qword [rcx], rax
mov eax, dword [rcx + 0x78]
test al, 0x10
je 0x14004c0c6
mov rax, qword [rsi + 0x48]
mov rdi, qword [rsi + 0x70]
cmp rdi, rax
jae 0x14004bb8b
mov qword [rsi + 0x70], rax
mov rdi, rax
mov rbx, qword [rsi + 0x40]
sub rdi, rbx
js 0x14004c09a
cmp rdi, r13
ja 0x14004c083
cmp rdi, 0x16
ja 0x14004be95
lea rcx, [rsp + 0xa0]
mov byte [rcx + 0x17], dil
lea r14, [rcx + rdi]
cmp rcx, rbx
ja 0x14004bbc9
cmp r14, rbx
ja 0x14004c100
test rdi, rdi
je 0x14004bbd9
mov rdx, rbx
mov r8, rdi
call fcn.1400da530
lea r15, [rsi + 0x10]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x30], rax
mov byte [r14], 0
movzx ebx, byte [rsp + 0xb7]
test bl, bl
jns 0x14004bbfe
mov rbx, qword [rsp + 0xa8]
jns 0x14004bc0d
mov rcx, qword [rsp + 0xa0]
call fcn.1400d75b4
mov rax, qword [rsi + 0x10]
movsxd rcx, dword [rax + 4]
add rcx, r15
lea r14, [rsp + 0xa0]
mov rdx, r14
call fcn.1400a6780
lea rdx, [0x1401cbe60]
mov rcx, r14
call fcn.1400a72c0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x1401dd008]
mov ebp, eax
mov rcx, r14
call fcn.1400a68e0
mov rcx, r15
mov edx, ebp
call fcn.140025bc0
mov rcx, r15
call fcn.140024f70
movabs rdi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rdi
movaps xmm0, xmmword [0x1401849f0]
movaps xmmword [rsp + 0x70], xmm0
mov eax, dword [rsi + 0x78]
test al, 0x10
je 0x14004c0e2
mov rax, qword [rsi + 0x48]
mov r15, qword [rsi + 0x70]
cmp r15, rax
jae 0x14004bca5
mov qword [rsi + 0x70], rax
mov r15, rax
mov r12, qword [rsi + 0x40]
sub r15, r12
js 0x14004c09a
cmp r15, r13
ja 0x14004c090
cmp r15, 0x16
ja 0x14004be5f
lea rcx, [rsp + 0x70]
mov byte [rcx + 0x17], r15b
lea r13, [rcx + r15]
cmp rcx, r12
ja 0x14004bce0
cmp r13, r12
ja 0x14004c100
test r15, r15
je 0x14004bcf0
mov rdx, r12
mov r8, r15
call fcn.1400da530
mov byte [r13], 0
mov r8, qword [rsi + 0x118]
mov qword [rsp + 0x20], r14
lea r12, [rsp + 0x58]
lea r15, [rsp + 0x70]
mov rcx, r12
mov rdx, r15
mov r9, 0xffffffffffffffff
call fcn.14003caa0
mov eax, dword [rsi + 0x128]
mov rcx, qword [rsi + 0x120]
mov dword [rsp + 0x9c], eax
mov qword [rsp + 0x90], rcx
test byte [0x1401bf5f0], 0x19
jne 0x14004bf40
cmp byte [rsp + 0x6f], 0
jns 0x14004bd57
mov rcx, qword [rsp + 0x58]
call fcn.1400d75b4
cmp dword [rsi + 8], 3
je 0x14004bfc6
mov rax, qword [0x1401cd168]
test rax, rax
je 0x14004bd94
mov r9, qword [rsi + 0x118]
mov r8d, dword [rsi + 0x128]
mov rdx, qword [rsi + 0x120]
mov ecx, dword [rsi + 8]
mov qword [rsp + 0x20], r15
call qword [0x1401dd008]
test al, al
jne 0x14004bdcb
mov eax, dword [0x1401c06e0]
test al, 2
jne 0x14004bf1d
test al, 4
jne 0x14004bece
cmp eax, 1
ja 0x14004bdb9
cmp dword [rsi + 8], 2
jge 0x14004bece
test al, 1
jne 0x14004bf74
cmp dword [rsi + 8], 3
je 0x14004c12c
cmp byte [rsp + 0x87], 0
jns 0x14004bddf
mov rcx, qword [rsp + 0x70]
call fcn.1400d75b4
lea rcx, [rsi + 0x12c]
call fcn.1400c1c40
mov rax, qword [rsi + 0x10]
movsxd rax, dword [rax + 4]
lea rcx, [0x140185e18]
mov qword [rsi + rax + 0x10], rcx
lea rax, [0x140185e20]
mov qword [rsi + 0x18], rax
cmp byte [rsi + 0x6f], 0
jns 0x14004be19
mov rcx, qword [rsi + 0x58]
call fcn.1400d75b4
sub rsi, 0xffffffffffffff80
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call fcn.140098030
mov rcx, rdi
call fcn.140098090
mov rcx, rsi
call fcn.140098020
mov rcx, qword [rsp + 0x4a0]
xor rcx, rsp
call fcn.1400d8aa0
nop
add rsp, 0x4a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, r13
mov r13, r15
or r13, 0xf
inc r13
mov rcx, r13
call fcn.1400d7578
mov rcx, rax
mov qword [rsp + 0x70], rax
add rbp, 0x11
or rbp, r13
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x78], r15
jmp 0x14004bcce
mov r14, rdi
or r14, 0xf
inc r14
mov rcx, r14
call fcn.1400d7578
mov rcx, rax
mov qword [rsp + 0xa0], rax
lea rax, [r13 + 0x11]
or rax, r14
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xa8], rdi
jmp 0x14004bbb7
lea r14, [rsp + 0x70]
movzx ecx, byte [r14 + 0x17]
mov r15d, ecx
and r15d, 0x7f
test cl, cl
cmovs r15, qword [r14 + 8]
cmovs r14, qword [r14]
test r15, r15
je 0x14004bdb9
xor r12d, r12d
mov r8d, r15d
sub r8d, r12d
lea rdx, [r14 + r12]
mov ecx, 2
call fcn.1400f16c8
test eax, eax
jns 0x14004c01e
mov eax, dword [0x1401c06e0]
jmp 0x14004bdb9
cmp byte [rsp + 0x87], 0
jns 0x14004bf2c
mov r15, qword [rsp + 0x70]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1401c06e0]
jmp 0x14004bda2
lea rax, [rsp + 0x90]
lea rdx, [rsp + 0xa0]
mov qword [rdx], rax
lea rax, [rsp + 0x9c]
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r12
lea rcx, str.LogMessage
call fcn.140137f60
jmp 0x14004bd46
call fcn.140137810
test al, al
je 0x14004bdc1
lea r9, [rsp + 0xa0]
mov dword [r9], 0xaaaaaaaa
lea rdx, [rsp + 0x70]
movzx eax, byte [rdx + 0x17]
mov r8d, eax
and r8d, 0x7f
test al, al
cmovs r8d, dword [rdx + 8]
cmovs rdx, qword [rdx]
mov rcx, qword [0x1401cd180]
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x14004bdc1
cmp byte [0x1401cd1b4], 0
jne 0x14004bd61
mov byte [0x1401cd1b4], 1
mov eax, dword [0x1401cd1c0]
mov ecx, dword [0x1401c1138]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14004c277
mov rcx, rsi
mov rdx, r14
call fcn.140137b80
movzx r8d, byte [rsp + 0xb7]
test r8b, r8b
js 0x14004c031
and r8d, 0x7f
jmp 0x14004c041
mov eax, eax
add r12, rax
cmp r12, r15
jb 0x14004bef6
jmp 0x14004bf12
mov r8, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
lea r12, [rsp + 0x58]
mov rcx, r12
mov rdx, r14
call fcn.140098ee0
mov rcx, qword [0x1401cd1b8]
mov rdx, r12
call fcn.14005b230
cmp byte [rsp + 0xb7], 0
jns 0x14004c077
mov rcx, qword [rsp + 0xa0]
call fcn.1400d75b4
mov byte [0x1401cd1b4], 0
jmp 0x14004bd61
lea rcx, [rsp + 0xa0]
call fcn.14010f560
lea rcx, [rsp + 0x70]
call fcn.14010f560
lea rax, str.std::string_view::string_view_iterator__sentinel__received_invalid_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.___end_____begin____0
mov r8d, 0x147
call fcn.140110530
xor ebx, ebx
mov edi, 0
test al, 8
je 0x14004bbab
mov rbx, qword [rsi + 0x28]
mov rdi, qword [rsi + 0x38]
jmp 0x14004bb8f
xor r15d, r15d
mov r12d, 0
test al, 8
je 0x14004bcc5
mov r12, qword [rsi + 0x28]
mov r15, qword [rsi + 0x38]
jmp 0x14004bca9
lea rax, str.char_traits::copy_overlapped_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__stringchar_traits.h
lea r9, str.__s2_____s1____s2_____s1____n
mov r8d, 0xf3
call fcn.140110530
lea r14, [rsp + 0xa0]
mov r8d, 0x400
mov rcx, r14
mov dl, 0xaa
call fcn.1400dabe0
cmp byte [rsp + 0x87], 0
jns 0x14004c155
mov rdx, qword [rsp + 0x70]
jmp 0x14004c15a
lea rdx, [rsp + 0x70]
mov r8d, 0x400
mov rcx, r14
call fcn.1400b0a50
mov rcx, r14
call fcn.140098090
call fcn.140137a90
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 0x18]
je 0x14004c2b9
mov qword [rsp + 0x58], rdi
call fcn.140137a90
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x18]
test rdx, rdx
cmove rdx, rcx
dec rdx
cmp rcx, rdx
jb 0x14004c274
shl rdx, 3
add rdx, qword [rax]
lea r14, [rsp + 0x58]
mov rcx, r14
call fcn.1400b7e70
cmp qword [r14], 0
jne 0x14004c1d1
lea rcx, [rsp + 0x58]
call fcn.1400b7ea0
jmp 0x14004bdcb
cmp byte [rsp + 0x87], 0
jns 0x14004c1e2
mov r14, qword [rsp + 0x70]
jmp 0x14004c1e7
lea r14, [rsp + 0x70]
mov rcx, r14
add rcx, rbx
mov qword [rsp + 0x48], rcx
je 0x14004c248
call fcn.1400f63e0
lea r12, [rsp + 0x48]
mov qword [r12 + 8], rax
mov rax, qword [rsi + 0x118]
sub rbx, rax
add r14, rax
lea r15, [rsp + 0x38]
mov rcx, r15
mov rdx, r14
mov r8, rbx
call fcn.140098ee0
mov r8d, dword [rsi + 0x128]
mov rdx, qword [rsi + 0x120]
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x58]
mov r9, r15
call fcn.140137b00
jmp 0x14004c1c2
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.140110530
int3
lea rcx, [0x1401cd1c0]
call fcn.1400d76d0
cmp dword [0x1401cd1c0], 0xffffffff
jne 0x14004bfff
lea rcx, str.LOG_FATAL
mov edx, 0x400
call fcn.14005b200
mov qword [0x1401cd1b8], rax
lea rcx, [0x1401cd1c0]
call fcn.1400d7768
jmp 0x14004bfff
int3