Function at 0x18001601c
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], r8
mov qword [rax + 0x20], r9
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x8f8]
sub rsp, 0x9c0
mov rax, qword [0x1801170a0]
xor rax, rsp
mov qword [rbp + 0x8b0], rax
mov rbx, rdx
movsxd r12, ecx
mov esi, 0x800
mov r8d, esi
xor edx, edx
lea rcx, [rbp + 0xb0]
call fcn.180081ce0
lea rdi, [rbp + 0x910]
call fcn.180018df0
mov qword [rsp + 0x28], rdi
and qword [rsp + 0x20], 0
mov r9, rbx
mov r8d, esi
lea rdx, [rbp + 0xb0]
mov rcx, qword [rax]
call fcn.18008b9d4
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
and qword [rbp + 0xa0], 0
and qword [rbp + 0xa8], 0
lea rax, [rbp + 0xb0]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800160c1
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x90]
call fcn.18000fa98
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
and qword [rsp + 0x40], 0
and qword [rsp + 0x48], 0
lea r14, [rbp + 0x90]
mov rsi, qword [rbp + 0x90]
mov r15, qword [rbp + 0xa8]
cmp r15, 0x10
cmovae r14, rsi
movabs rbx, 0x7fffffffffffffff
mov rdi, qword [rbp + 0xa0]
cmp rdi, rbx
ja 0x18001637b
mov eax, send
mov qword [rsp + 0x48], rax
cmp rdi, 0x10
jae 0x18001614b
mov qword [rsp + 0x40], rdi
movups xmm0, xmmword [r14]
movdqu xmmword [rsp + 0x30], xmm0
jmp 0x1800161b6
mov rcx, rdi
or rcx, rax
cmp rcx, rbx
jbe 0x180016162
movabs rcx, 0x8000000000000000
jmp 0x18001617e
mov rbx, rcx
mov eax, 0x16
cmp rcx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180016185
call fcn.18000fa5c
jmp 0x180016193
test rcx, rcx
je 0x180016191
call fcn.18007f008
jmp 0x180016193
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.180081630
mov rax, qword [rsp + 0x48]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x70], rcx
test r12d, r12d
jne 0x18001625b
cmp rax, 0x10
jb 0x180016203
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x30]
cmp rdx, 0x1000
mov rax, rcx
jb 0x1800161fd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016375
call fcn.18007f000
nop
cmp r15, 0x10
jb 0x18001623a
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180016232
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016381
mov rcx, rsi
call fcn.18007f000
mov rcx, qword [rbp + 0x8b0]
xor rcx, rsp
call fcn.18007efe0
add rsp, 0x9c0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, [rsp + 0x30]
cmp rax, 0x10
cmovae rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, [rbp - 0x80]
call fcn.180017048
nop
lea rcx, [rbp - 0x80]
call fcn.180016ecc
xor ecx, ecx
call fcn.180085fec
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x50]
call fcn.180086358
mov rbx, rax
lea rdx, [0x1800fd1f0]
lea rcx, [rbp - 0x80]
call fcn.1800177ac
mov qword [rsp + 0x58], rbx
lea rcx, str._Y__m__d__H:_M:_S
mov qword [rsp + 0x60], rcx
inc rcx
cmp byte [rcx], 0
jne 0x1800162bd
mov qword [rsp + 0x68], rcx
lea rdx, [rsp + 0x58]
mov rcx, rax
call fcn.180017a00
mov rcx, rax
lea rdx, [0x1800fdd28]
call fcn.1800177ac
lea rdx, [0x1800fdd48]
lea rcx, [rbp - 0x80]
call fcn.1800177ac
lea rcx, str.DEBUG
mov rdx, qword [rcx + r12*8]
mov rcx, rax
call fcn.1800177ac
mov rcx, rax
lea rdx, [0x1800fdd44]
call fcn.1800177ac
lea rdx, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov rcx, rax
call fcn.1800187b0
mov rcx, rax
call fcn.180017ba4
nop
lea rcx, [rbp + 0x28]
call fcn.180016fc8
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x28], rax
lea rcx, [rbp + 0x28]
call fcn.18007de7c
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180016203
inc rdx
jmp 0x1800161d3
call fcn.180085f74
int3
call fcn.18000f948
nop
call fcn.180085f74
int3