Function at 0x140043550
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x140105c88]
xor rax, rsp
mov qword [rsp + 0x70], rax
movabs r12, 0xaaaaaaaaaaaaaaaa
lea rbx, [rcx + 8]
lea rax, [0x1400e11b8]
mov qword [rcx], rax
lea rax, [0x1400e11c8]
mov qword [rcx + 8], rax
mov eax, dword [0x14010a3a0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x120]
mov qword [rsi + 0x10], rcx
mov rcx, qword [rax + 0x120]
mov qword [rax + 0x120], rsi
mov qword [rsi + 0x18], rcx
mov qword [rsi + 0x20], rdx
xorps xmm0, xmm0
movups xmmword [rsi + 0x28], xmm0
mov eax, dword [rdx + 0x33c]
mov dword [rsi + 0x38], eax
lea r14, [rsp + 0x60]
mov rcx, r14
call fcn.14006e6f0
mov rcx, r14
mov rdx, rsi
call fcn.14006e730
call fcn.14006e7b0
mov r14, rax
call fcn.14006f070
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14004364b
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x60], r12
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x140043767
xor eax, eax
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14004364b
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x50]
call fcn.140038640
mov r9, qword [rsp + 0x48]
lea r8, str.ThreadLocalEventBuffer
mov rcx, r14
mov rdx, rbx
call fcn.14006e940
call sub.KERNEL32.dll_GetCurrentThreadId
mov dword [rsp + 0x44], eax
lea rbx, [rdi + 8]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x140043684
mov rcx, rbx
call sub.KERNEL32.dll_AcquireSRWLockExclusive
call fcn.14006f070
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400436d6
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x60], r12
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x1400437a8
xor eax, eax
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1400436d6
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x50]
call fcn.140038640
add rdi, 0x2e0
lea r8, [rsp + 0x44]
mov qword [rsp + 0x50], r8
lea rax, [rsp + 0x5f]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [0x1400e1305]
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.140047030
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x60], rcx
mov rdx, qword [rax + 0x18]
mov qword [rax + 0x18], rcx
mov qword [rsp + 0x60], rdx
test rdx, rdx
je 0x140043740
mov rcx, qword [rsp + 0x60]
lock dec dword [rcx + 8]
jne 0x140043740
call fcn.140053f30
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1400a5060
mov rax, rsi
add rsp, 0x78
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov ecx, 0x7fffffff
call fcn.140042f30
mov r15, rax
mov ecx, 0x7fffffff
call fcn.140042f30
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
lea rdx, str....._basememory_ref_counted.h
lea r9, str.ref_count_.Increment_____std::numeric_limits_int_::max__
xor ecx, ecx
mov r8d, 0xd8
call fcn.1400386e0
jmp 0x14004362d
mov ecx, 0x7fffffff
call fcn.140042f30
mov r14, rax
mov ecx, 0x7fffffff
call fcn.140042f30
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
lea rdx, str....._basememory_ref_counted.h
lea r9, str.ref_count_.Increment_____std::numeric_limits_int_::max__
xor ecx, ecx
mov r8d, 0xd8
call fcn.1400386e0
jmp 0x1400436b8