Function at 0x140030270
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 [0x14010c038]
xor rax, rsp
mov qword [rsp + 0x4a0], rax
movabs r13, 0x7fffffffffffffef
lea rax, [0x1400efd00]
mov qword [rcx], rax
mov eax, dword [rcx + 0x78]
test al, 0x10
je 0x140030806
mov rax, qword [rsi + 0x48]
mov rdi, qword [rsi + 0x70]
cmp rdi, rax
jae 0x1400302cb
mov qword [rsi + 0x70], rax
mov rdi, rax
mov rbx, qword [rsi + 0x40]
sub rdi, rbx
js 0x1400307da
cmp rdi, r13
ja 0x1400307c3
cmp rdi, 0x16
ja 0x1400305d5
lea rcx, [rsp + 0xa0]
mov byte [rcx + 0x17], dil
lea r14, [rcx + rdi]
cmp rcx, rbx
ja 0x140030309
cmp r14, rbx
ja 0x140030840
test rdi, rdi
je 0x140030319
mov rdx, rbx
mov r8, rdi
call fcn.14007b4d0
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 0x14003033e
mov rbx, qword [rsp + 0xa8]
jns 0x14003034d
mov rcx, qword [rsp + 0xa0]
call fcn.140078610
mov rax, qword [rsi + 0x10]
movsxd rcx, dword [rax + 4]
add rcx, r15
lea r14, [rsp + 0xa0]
mov rdx, r14
call fcn.140052ad0
lea rdx, [0x1401230f0]
mov rcx, r14
call fcn.140053610
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x140130008]
mov ebp, eax
mov rcx, r14
call fcn.140052c30
mov rcx, r15
mov edx, ebp
call fcn.140019620
mov rcx, r15
call fcn.140018c10
movabs rdi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rdi
movaps xmm0, xmmword [0x1400f0930]
movaps xmmword [rsp + 0x70], xmm0
mov eax, dword [rsi + 0x78]
test al, 0x10
je 0x140030822
mov rax, qword [rsi + 0x48]
mov r15, qword [rsi + 0x70]
cmp r15, rax
jae 0x1400303e5
mov qword [rsi + 0x70], rax
mov r15, rax
mov r12, qword [rsi + 0x40]
sub r15, r12
js 0x1400307da
cmp r15, r13
ja 0x1400307d0
cmp r15, 0x16
ja 0x14003059f
lea rcx, [rsp + 0x70]
mov byte [rcx + 0x17], r15b
lea r13, [rcx + r15]
cmp rcx, r12
ja 0x140030420
cmp r13, r12
ja 0x140030840
test r15, r15
je 0x140030430
mov rdx, r12
mov r8, r15
call fcn.14007b4d0
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.1400277b0
mov eax, dword [rsi + 0x128]
mov rcx, qword [rsi + 0x120]
mov dword [rsp + 0x9c], eax
mov qword [rsp + 0x90], rcx
test byte [0x14011a5a0], 0x19
jne 0x140030680
cmp byte [rsp + 0x6f], 0
jns 0x140030497
mov rcx, qword [rsp + 0x58]
call fcn.140078610
cmp dword [rsi + 8], 3
je 0x140030706
mov rax, qword [0x1401242e8]
test rax, rax
je 0x1400304d4
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 [0x140130008]
test al, al
jne 0x14003050b
mov eax, dword [0x14011b688]
test al, 2
jne 0x14003065d
test al, 4
jne 0x14003060e
cmp eax, 1
ja 0x1400304f9
cmp dword [rsi + 8], 2
jge 0x14003060e
test al, 1
jne 0x1400306b4
cmp dword [rsi + 8], 3
je 0x14003086c
cmp byte [rsp + 0x87], 0
jns 0x14003051f
mov rcx, qword [rsp + 0x70]
call fcn.140078610
lea rcx, [rsi + 0x12c]
call fcn.1400636b0
mov rax, qword [rsi + 0x10]
movsxd rax, dword [rax + 4]
lea rcx, [0x1400efb80]
mov qword [rsi + rax + 0x10], rcx
lea rax, [0x1400efbf0]
mov qword [rsi + 0x18], rax
cmp byte [rsi + 0x6f], 0
jns 0x140030559
mov rcx, qword [rsi + 0x58]
call fcn.140078610
sub rsi, 0xffffffffffffff80
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call fcn.140046a40
mov rcx, rdi
call fcn.140046aa0
mov rcx, rsi
call fcn.140046a30
mov rcx, qword [rsp + 0x4a0]
xor rcx, rsp
call fcn.140079a20
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.1400785d4
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 0x14003040e
mov r14, rdi
or r14, 0xf
inc r14
mov rcx, r14
call fcn.1400785d4
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 0x1400302f7
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 0x1400304f9
xor r12d, r12d
mov r8d, r15d
sub r8d, r12d
lea rdx, [r14 + r12]
mov ecx, 2
call fcn.14009063c
test eax, eax
jns 0x14003075e
mov eax, dword [0x14011b688]
jmp 0x1400304f9
cmp byte [rsp + 0x87], 0
jns 0x14003066c
mov r15, qword [rsp + 0x70]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14011b688]
jmp 0x1400304e2
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.1400d2c30
jmp 0x140030486
call fcn.1400d24e0
test al, al
je 0x140030501
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 [0x140124300]
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x140030501
cmp byte [0x140124334], 0
jne 0x1400304a1
mov byte [0x140124334], 1
mov eax, dword [0x140124340]
mov ecx, dword [0x14011b748]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400309b7
mov rcx, rsi
mov rdx, r14
call fcn.1400d2850
movzx r8d, byte [rsp + 0xb7]
test r8b, r8b
js 0x140030771
and r8d, 0x7f
jmp 0x140030781
mov eax, eax
add r12, rax
cmp r12, r15
jb 0x140030636
jmp 0x140030652
mov r8, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
lea r12, [rsp + 0x58]
mov rcx, r12
mov rdx, r14
call fcn.140046fc0
mov rcx, qword [0x140124338]
mov rdx, r12
call fcn.1400392d0
cmp byte [rsp + 0xb7], 0
jns 0x1400307b7
mov rcx, qword [rsp + 0xa0]
call fcn.140078610
mov byte [0x140124334], 0
jmp 0x1400304a1
lea rcx, [rsp + 0xa0]
call fcn.1400abaa0
lea rcx, [rsp + 0x70]
call fcn.1400abaa0
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.1400ac530
xor ebx, ebx
mov edi, 0
test al, 8
je 0x1400302eb
mov rbx, qword [rsi + 0x28]
mov rdi, qword [rsi + 0x38]
jmp 0x1400302cf
xor r15d, r15d
mov r12d, 0
test al, 8
je 0x140030405
mov r12, qword [rsi + 0x28]
mov r15, qword [rsi + 0x38]
jmp 0x1400303e9
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.1400ac530
lea r14, [rsp + 0xa0]
mov r8d, 0x400
mov rcx, r14
mov dl, 0xaa
call fcn.14007bb70
cmp byte [rsp + 0x87], 0
jns 0x140030895
mov rdx, qword [rsp + 0x70]
jmp 0x14003089a
lea rdx, [rsp + 0x70]
mov r8d, 0x400
mov rcx, r14
call fcn.140059ad0
mov rcx, r14
call fcn.140046aa0
call fcn.1400d2760
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 0x18]
je 0x1400309f9
mov qword [rsp + 0x58], rdi
call fcn.1400d2760
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x18]
test rdx, rdx
cmove rdx, rcx
dec rdx
cmp rcx, rdx
jb 0x1400309b4
shl rdx, 3
add rdx, qword [rax]
lea r14, [rsp + 0x58]
mov rcx, r14
call fcn.14005c490
cmp qword [r14], 0
jne 0x140030911
lea rcx, [rsp + 0x58]
call fcn.14005c4c0
jmp 0x14003050b
cmp byte [rsp + 0x87], 0
jns 0x140030922
mov r14, qword [rsp + 0x70]
jmp 0x140030927
lea r14, [rsp + 0x70]
mov rcx, r14
add rcx, rbx
mov qword [rsp + 0x48], rcx
je 0x140030988
call fcn.1400946d0
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.140046fc0
mov r8d, dword [rsi + 0x128]
mov rdx, qword [rsi + 0x120]
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x58]
mov r9, r15
call fcn.1400d27d0
jmp 0x140030902
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.1400ac530
int3
lea rcx, [0x140124340]
call fcn.14007865c
cmp dword [0x140124340], 0xffffffff
jne 0x14003073f
lea rcx, str.LOG_FATAL
mov edx, 0x400
call fcn.1400392a0
mov qword [0x140124338], rax
lea rcx, [0x140124340]
call fcn.140078710
jmp 0x14003073f
int3