Function at 0x10006b2fc
Capabilities:
Listen for remote procedure calls

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
movdqu xmm0, xmmword [0x10041a5c8]
mov rcx, qword [0x10041a688]
xor r12d, r12d
mov qword [rax + 0x10], r12
movdqu xmmword [rax - 0x38], xmm0
cmp rcx, r12
je 0x10006b35f
lea rdx, [0x10004ef28]
call qword [0x10041a670]
cmp al, r12b
je 0x10006b35f
mov rcx, qword [0x10041a688]
lea rdx, [0x10004ef28]
xor r9d, r9d
xor r8d, r8d
call qword [0x10041a678]
lea rcx, [0x10041c8d0]
call fcn.10006d810
mov r14d, 1
lea r15, [0x1003fe1f0]
cmp eax, r12d
mov edi, eax
jl 0x10006b765
mov edi, r12d
mov ebx, 0x80004005
cmp dword [0x10041c890], r12d
jne 0x10006b433
lea rcx, [0x10041c868]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
cmp eax, r12d
jne 0x10006b3cc
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r12d
jne 0x10006b3bb
mov edi, ebx
jmp 0x10006b3d8
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
jmp 0x10006b3d3
mov dword [0x10041c890], r14d
cmp edi, r12d
jge 0x10006b433
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b402
test byte [rcx + 0x3c], 2
je 0x10006b402
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e870]
mov edx, 0xb
mov r9d, edi
call fcn.10006e130
cmp edi, r12d
jge 0x10006b433
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b43a
test byte [rcx + 0x3c], 2
je 0x10006b43a
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e870]
mov edx, 0xa
mov r9d, edi
call fcn.10006e130
jmp 0x10006b43a
mov dword [0x10041c860], r12d
cmp edi, r12d
jl 0x10006b765
mov ebp, r12d
jmp 0x10006b460
lea ecx, [rax + 2]
lock cmpxchg dword [0x10041c860], ecx
je 0x10006b46d
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x10041c860]
test r14b, al
je 0x10006b448
jmp 0x10006b47d
lea rcx, [0x10041c868]
mov ebp, r14d
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [0x10041a380]
call fcn.1000af640
cmp eax, r12d
mov edi, eax
jge 0x10006b4ba
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b4ba
test byte [rcx + 0x3c], 2
je 0x10006b4ba
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e1e8]
mov edx, 0xa
mov r9d, eax
call fcn.10006e130
cmp edi, r12d
jl 0x10006b769
mov ecx, 4
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000384
mov qword [rsp + 0x20], r12
call fcn.100069c18
lea r11, [0x10006bf90]
lea r9, [0x10004eb50]
mov qword [rsp + 0x28], r11
lea r8, [0x10004f018]
lea rdx, [0x10004f050]
lea rcx, [0x10041c898]
mov dword [rsp + 0x20], 0x21
call fcn.10006bda8
cmp eax, r12d
mov edi, eax
jl 0x10006b769
xor r9d, r9d
xor r8d, r8d
mov edx, r14d
xor ecx, ecx
mov edi, r12d
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov esi, 8
mov qword [0x10041c910], rax
cmp rax, r12
je 0x10006b56a
lea r8, [0x10006bf7c]
lea rcx, [0x10041c918]
xor r9d, r9d
mov rdx, rax
mov dword [rsp + 0x28], esi
or dword [rsp + 0x20], 0xffffffff
call qword [sym.imp.KERNEL32.dll_RegisterWaitForSingleObject]
cmp eax, r12d
jne 0x10006b5b7
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r12d
jne 0x10006b579
mov edi, ebx
jmp 0x10006b58d
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
cmp edi, r12d
jge 0x10006b5c0
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b5b7
test byte [rcx + 0x3c], 2
je 0x10006b5b7
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e820]
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
mov r9d, edi
call fcn.10006e130
cmp edi, r12d
jl 0x10006b769
mov edi, r12d
call qword [sym.imp.KERNEL32.dll_CreateTimerQueue]
mov qword [0x10041c908], rax
cmp rax, r12
je 0x10006b602
mov dword [rsp + 0x30], esi
lea r8, [0x10006bf84]
lea rcx, [0x10041c900]
xor r9d, r9d
mov rdx, rax
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
call qword [sym.imp.KERNEL32.dll_CreateTimerQueueTimer]
cmp eax, r12d
jne 0x10006b64f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, r12d
jne 0x10006b611
mov edi, ebx
jmp 0x10006b625
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
cmp edi, r12d
jge 0x10006b658
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b64f
test byte [rcx + 0x3c], 2
je 0x10006b64f
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e820]
mov edx, SafeArrayGetLBound
mov r9d, edi
call fcn.10006e130
cmp edi, r12d
jl 0x10006b769
xor edx, edx
xor r8d, r8d
lea ecx, [rdx + 4]
call fcn.10006ba78
cmp ebp, r12d
je 0x10006b69a
lea rcx, [0x10041c868]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x10006b684
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x10041c860]
lea ecx, [rax - 2]
lock cmpxchg dword [0x10041c860], ecx
jne 0x10006b679
mov ebp, r12d
movdqu xmm0, xmmword [0x10041a4a8]
mov rsi, r12
mov edi, r12d
movdqu xmmword [rsp + 0x50], xmm0
mov ebx, dword [rsp + 0x58]
cmp dword [0x10041c8c0], r12d
je 0x10006b6d7
cmp ebx, r12d
jne 0x10006b6d7
lea rcx, [0x10041c898]
lea rsi, [0x10041c898]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ebx, r14d
cmp dword [0x10041c8cc], r12d
je 0x10006b755
cmp dword [0x10041c8c8], r12d
jne 0x10006b755
cmp ebx, r12d
je 0x10006b6fa
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, r12d
xor r8d, r8d
mov ecx, r14d
lea edx, [r8 + 0x64]
call qword [sym.imp.RPCRT4.dll_RpcServerListen]
cmp eax, r12d
je 0x10006b755
mov ecx, eax
call qword [sym.imp.RPCRT4.dll_I_RpcMapWin32Status]
movzx edi, ax
or edi, 0x80070000
cmp eax, r12d
cmovle edi, eax
cmp edi, r12d
jge 0x10006b755
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b755
test byte [rcx + 0x3c], 2
je 0x10006b755
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e820]
mov edx, SafeArrayGetDim
mov r9d, edi
call fcn.10006e130
cmp ebx, r12d
je 0x10006b769
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x10006b769
mov ebp, dword [rsp + 0x50]
cmp ebp, r12d
je 0x10006b79e
lea rcx, [0x10041c868]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x10006b788
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x10041c860]
lea ecx, [rax - 2]
lock cmpxchg dword [0x10041c860], ecx
jne 0x10006b77d
mov ebp, r12d
cmp edi, r12d
jge 0x10006b7d9
lea rdx, [rsp + 0x98]
xor ecx, ecx
call fcn.10006ad0c
mov r9, qword [rsp + 0x98]
mov ecx, r14d
mov r8d, edi
mov edx, 0xc00003e9
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
call fcn.100069ca8
call fcn.10006c18c
mov rcx, qword [0x10041a688]
mov dword [rsp + 0x90], edi
cmp rcx, r12
je 0x10006b834
lea rdx, [0x10004ef38]
call qword [0x10041a670]
cmp al, r12b
je 0x10006b834
mov rcx, qword [0x10041a688]
lea rax, [rsp + 0x90]
lea r9, [rsp + 0x40]
lea rdx, [0x10004ef38]
mov r8d, r14d
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 4
mov dword [rsp + 0x4c], r12d
call qword [0x10041a678]
cmp edi, r12d
jge 0x10006b863
mov rcx, qword [0x1003fe1f0]
cmp rcx, r15
je 0x10006b863
test byte [rcx + 0x3c], 2
je 0x10006b863
mov rcx, qword [rcx + 0x30]
lea r8, [0x10004e820]
mov edx, SafeArrayGetLBound
mov r9d, edi
call fcn.10006e130
mov rax, qword [rsp + 0x98]
cmp rax, r12
je 0x10006b888
lea rbx, [rax - 4]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp ebp, r12d
je 0x10006b8ba
lea rcx, [0x10041c868]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x10006b8a7
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x10041c860]
lea ecx, [rax - 2]
lock cmpxchg dword [0x10041c860], ecx
jne 0x10006b89c
lea r11, [rsp + 0x60]
mov eax, edi
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret