Function at 0x140050be0
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
mov eax, 0x1068
call fcn.1400e0120
sub rsp, rax
movaps xmmword [rsp + 0x1050], xmm6
mov rsi, rcx
mov rax, qword [0x140155cc0]
xor rax, rsp
mov qword [rsp + 0x1048], rax
movabs r13, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x50], r13
lea rcx, [rsp + 0x50]
call fcn.1400830c0
lea rbx, [rsi + 0x18]
lea rdx, [rsp + 0x78]
lea r8, [rsp + 0x860]
mov rcx, rbx
call fcn.140005160
movsx rdi, byte [rsp + 0x8f]
test rdi, rdi
js 0x140050c65
lea r14, [rsi + 0x10]
cmp dword [rsi + 8], 3
je 0x140050c85
jmp 0x140050e7b
mov rcx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
call fcn.1400dffa0
lea r14, [rsi + 0x10]
cmp dword [rsi + 8], 3
jne 0x140050e7b
call fcn.140083540
test al, al
jne 0x140050e7b
lea r15, [rsp + 0x860]
mov r8d, 0x7d8
mov rcx, r15
mov dl, 0xaa
call fcn.140114c60
mov rcx, r15
call fcn.140083560
mov rax, qword [r14]
movsxd rcx, dword [rax + 4]
add rcx, r14
lea r12, [rsp + 0x78]
mov rdx, r12
call fcn.140018b20
lea rdx, [0x140163d78]
mov rcx, r12
call fcn.14003c650
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x140146120]
mov ebp, eax
mov rcx, r12
call fcn.14001cf40
mov rcx, r14
mov edx, ebp
call fcn.14001a810
mov rcx, r14
call fcn.140019100
mov rcx, r15
mov rdx, r14
call fcn.140083810
lea r15, [rsp + 0x78]
mov r8d, 0x7e8
mov rcx, r15
mov dl, 0xaa
call fcn.140114c60
mov rcx, r15
call fcn.140083bd0
mov rcx, r15
call fcn.140083d00
test al, al
jne 0x140050d4a
lea rcx, [rsp + 0x78]
mov rdx, r14
call fcn.140083d10
call fcn.140084080
test rax, rax
je 0x140050e73
mov r12, rax
cmp dword [rax + 0x60], 0
je 0x140050e73
lea rdx, str.IPC_message_handler_context:
mov r8d, 0x1d
mov rcx, r14
call fcn.1400034d0
mov r15, rax
mov eax, dword [r12 + 0x60]
movabs rcx, 0xaaaaaaaa00000000
or rcx, rax
mov qword [rsp + 0x1038], rcx
lea rax, [0x140007270]
mov qword [rsp + 0x1040], rax
lea rax, [rsp + 0x1038]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], 1
lea rax, str.0x_08X
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 6
lea r12, [rsp + 0x30]
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x68]
mov rcx, r12
call fcn.140007cf0
movsx r8, byte [rsp + 0x47]
test r8, r8
jns 0x140050dfd
mov r8, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rcx, r15
mov rdx, r12
call fcn.1400034d0
mov r15, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
add rcx, r15
lea r12, [rsp + 0x68]
mov rdx, r12
call fcn.140018b20
lea rdx, [0x140163d78]
mov rcx, r12
call fcn.14003c650
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x140146120]
mov ebp, eax
mov rcx, r12
call fcn.14001cf40
mov rcx, r15
mov edx, ebp
call fcn.14001a810
mov rcx, r15
call fcn.140019100
cmp byte [rsp + 0x47], 0
jns 0x140050e73
mov rcx, qword [rsp + 0x30]
call fcn.1400dffa0
mov rcx, r14
call fcn.140084140
mov rax, qword [rsi + 0x10]
movsxd rcx, dword [rax + 4]
add rcx, r14
lea r15, [rsp + 0x78]
mov rdx, r15
call fcn.140018b20
lea rdx, [0x140163d78]
mov rcx, r15
call fcn.14003c650
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov dl, 0xa
mov rax, r8
call qword [0x140146120]
mov ebp, eax
mov rcx, r15
call fcn.14001cf40
mov rcx, r14
mov edx, ebp
call fcn.14001a810
mov rcx, r14
call fcn.140019100
mov qword [rsp + 0x870], r13
movaps xmm6, xmmword [section..rdata]
movaps xmmword [rsp + 0x860], xmm6
lea r15, [rsp + 0x860]
lea r14, [rsp + 0x78]
mov rcx, rbx
mov rdx, r15
mov r8, r14
call fcn.140005160
mov rax, qword [rsi + 0x118]
movsx rbx, byte [rsp + 0x877]
test rbx, rbx
js 0x140050f4a
sub rbx, rax
jb 0x1400512fe
add r15, rax
lea r13, [rsp + 0x30]
cmp rbx, 0x16
ja 0x140050f84
mov byte [rsp + 0x47], bl
mov rcx, r13
lea r12, [rcx + rbx]
cmp r15, rcx
jae 0x140050fd1
jmp 0x140050fda
mov rbx, qword [rsp + 0x868]
sub rbx, rax
jb 0x1400512fe
movabs rcx, 0x7ffffffffffffff7
cmp rbx, rcx
ja 0x140051308
mov r15, qword [rsp + 0x860]
add r15, rax
lea r13, [rsp + 0x30]
cmp rbx, 0x16
jbe 0x140050f31
mov rax, rbx
or rax, 7
lea rcx, [rax + 1]
cmp rax, 0x17
mov r12d, 0x19
cmovne r12, rcx
mov rcx, r12
call fcn.1400dff64
mov rcx, rax
mov qword [rsp + 0x30], rax
movabs rax, 0x7ffffffffffffff7
add rax, 9
or rax, r12
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rbx
lea r12, [rcx + rbx]
cmp r15, rcx
jb 0x140050fda
cmp r15, r12
jb 0x140051061
test rbx, rbx
je 0x140050fea
mov rdx, r15
mov r8, rbx
call fcn.1401145c0
mov byte [r12], 0
mov eax, dword [rsi + 0x128]
mov rcx, qword [rsi + 0x120]
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x1038], 0x57
lea rax, [rsp + 0x68]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r13
lea rax, [rsp + 0x1038]
mov qword [rsp + 0x90], rax
mov rax, qword [0x140127260]
movzx eax, byte [rax + 0x57]
test al, al
jne 0x140051074
cmp byte [rsp + 0x47], 0
js 0x140051088
cmp dword [rsi + 8], 3
je 0x14005109c
jmp 0x14005115a
lea rcx, [0x140117223]
lea rdx, str....._third_partylibc_srcinclude__stringchar_traits.h:148:_assertion__std::__is_pointer_in_range___s1____s1____n____s2__failed:_char_traits::copy:_source_and_destination_ranges_overlap_n
call fcn.140044b40
movzx edx, al
lea rcx, [rsp + 0x78]
call fcn.140052000
cmp byte [rsp + 0x47], 0
jns 0x140051056
mov rcx, qword [rsp + 0x30]
call fcn.1400dffa0
cmp dword [rsi + 8], 3
jne 0x14005115a
cmp byte [0x1401649a4], 0
jne 0x14005115a
movaps xmmword [rsp + 0x30], xmm6
lea rax, [0x1401649a4]
mov qword [rsp + 0x30], rax
movzx eax, byte [0x1401649a4]
mov byte [0x1401649a4], 1
mov byte [rsp + 0x38], al
mov eax, dword [0x1401649b0]
mov ecx, dword [0x1401652f8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x10]
jg 0x140051312
mov rcx, rsi
mov rdx, r14
call fcn.140051360
movsx rax, byte [rsp + 0x8f]
test rax, rax
jns 0x140051117
mov rax, qword [rsp + 0x80]
mov r14, qword [rsp + 0x78]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rax
mov rcx, qword [0x1401649a8]
lea rdx, [rsp + 0x68]
call fcn.1400840d0
cmp byte [rsp + 0x8f], 0
jns 0x140051146
mov rcx, qword [rsp + 0x78]
call fcn.1400dffa0
cmp qword [rsp + 0x30], 0
je 0x14005115a
movzx eax, byte [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov byte [rcx], al
mov rax, qword [0x140164960]
test rax, rax
je 0x140051199
mov r9, qword [rsi + 0x118]
mov r8d, dword [rsi + 0x128]
mov rdx, qword [rsi + 0x120]
mov ecx, dword [rsi + 8]
lea r10, [rsp + 0x860]
mov qword [rsp + 0x20], r10
call qword [0x140146120]
test al, al
jne 0x14005128e
mov eax, dword [0x140155630]
test al, 2
je 0x1400511cb
cmp byte [rsp + 0x877], 0
jns 0x1400511b7
mov rcx, qword [rsp + 0x860]
jmp 0x1400511bf
lea rcx, [rsp + 0x860]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140155630]
test al, 4
jne 0x1400511dc
test eax, 0xfffffffa
jne 0x140051238
cmp dword [rsi + 8], 2
jl 0x140051238
movsx rbx, byte [rsp + 0x877]
test rbx, rbx
cmovs rbx, qword [rsp + 0x868]
lea r14, [rsp + 0x860]
cmovs r14, qword [rsp + 0x860]
test rbx, rbx
je 0x140051238
xor r15d, r15d
nop word [rax + rax]
mov r8d, ebx
sub r8d, r15d
lea rdx, [r14 + r15]
mov ecx, 2
call fcn.1400f8e90
test eax, eax
js 0x140051232
mov eax, eax
add r15, rax
cmp r15, rbx
jb 0x140051210
mov eax, dword [0x140155630]
test al, 1
je 0x14005128e
call fcn.140050090
test al, al
je 0x14005128e
mov dword [rsp + 0x78], 0xaaaaaaaa
movzx r8d, byte [rsp + 0x877]
test r8b, r8b
cmovs r8d, dword [rsp + 0x868]
lea rdx, [rsp + 0x860]
cmovs rdx, qword [rsp + 0x860]
mov rcx, qword [0x140164948]
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp dword [rsi + 8], 3
jne 0x1400512a7
lea r8, [rsp + 0x860]
mov rcx, rsi
mov rdx, rdi
call fcn.1400514b0
cmp byte [rsp + 0x877], 0
jns 0x1400512be
mov rcx, qword [rsp + 0x860]
call fcn.1400dffa0
lea rcx, [rsp + 0x50]
call fcn.140083100
mov rcx, qword [rsp + 0x1048]
xor rcx, rsp
cmp rcx, qword [0x140155cc0]
jne 0x1400512f8
movaps xmm6, xmmword [rsp + 0x1050]
add rsp, 0x1068
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1400e0180
int3
lea rcx, [rsp + 0x30]
call fcn.140003cc0
lea rcx, [rsp + 0x30]
call fcn.140001b70
lea rcx, [0x1401649b0]
call fcn.1400dffec
cmp dword [0x1401649b0], 0xffffffff
jne 0x1400510f1
lea rcx, str.LOG_FATAL
mov edx, 0x400
call fcn.1400840a0
mov qword [0x1401649a8], rax
lea rcx, [0x1401649b0]
call fcn.1400e00a0
jmp 0x1400510f1