Function at 0x14010d410
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x188
mov rdi, rdx
mov rax, qword [0x14022c040]
xor rax, rsp
mov qword [rsp + 0x180], rax
cmp qword [rdx + 0x78], 0
je 0x14010dc96
mov rsi, r8
mov rdx, rcx
lea r14, [rcx + 0x18]
mov rcx, r14
mov rbx, rdx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14010dc86
mov qword [rsp + 0x68], r14
mov rax, qword [rdi + 0x28]
mov rcx, qword [rdi + 0x20]
xor edx, edx
cmp rax, rcx
setns dl
movabs r11, 0x7fffffffffffffff
add rdx, r11
sub rax, rcx
cmovo rax, rdx
mov ecx, dword [rdi + 0x38]
xor r8d, r8d
cmp ecx, 2
mov edx, ecx
cmove edx, r8d
cmp rax, qword [rbx + 0x50]
cmovl edx, ecx
mov dword [rdi + 0x38], edx
mov rax, qword [rbx + 0x38]
mov rcx, r11
cmp rax, qword [rbx + 0x40]
mov r10, rbx
je 0x14010d4bb
mov r8d, dword [rax + 0x38]
mov rcx, qword [rax + 0x28]
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x60], r8d
lea rax, [r10 + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rsi]
mov qword [rsp + 0x88], rax
xor r13d, r13d
mov qword [rsp + 0x58], rsi
mov qword [rsi], r13
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
mov rcx, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x28]
mov r8, qword [rdi + 0x30]
mov esi, dword [rdi + 0x38]
mov eax, dword [rdi + 0x6c]
mov dword [rsp + 0xe0], eax
movups xmm0, xmmword [rdi + 0x3c]
movups xmm1, xmmword [rdi + 0x4c]
movups xmm2, xmmword [rdi + 0x5c]
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
mov eax, dword [rdi + 0x70]
mov dword [rsp + 0x2c], eax
mov al, byte [rdi + 0x74]
mov byte [rsp + 0x2b], al
mov rax, qword [rdi + 0x78]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x50], rdi
mov qword [rdi + 0x78], r13
mov r15, qword [r10 + 0x38]
mov rax, qword [r10 + 0x40]
mov rbx, rax
movabs r9, 0xf0f0f0f0f0f0f0f1
sub rbx, r15
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], r8
mov dword [rsp + 0x64], esi
je 0x14010d7b7
lea rcx, [rdx + r8]
sar rcx, 0x3f
btc rcx, 0x3f
mov r14, rdx
add r14, r8
cmovo r14, rcx
sar rbx, 3
imul rbx, r9
lea rcx, [r8 + r11]
cmp rcx, 0xfffffffffffffffe
setb cl
test esi, esi
cmovne r14, rdx
setne sil
or sil, cl
mov qword [rsp + 0x30], r14
mov byte [rsp + 0x2a], sil
lea r12, [rbx - 1]
mov r13, r12
shr r13, 1
mov rcx, rax
sub rcx, r15
sar rcx, 3
imul rcx, r9
cmp rcx, r13
jbe 0x14010dc94
mov rdx, r13
shl rdx, 7
lea rdx, [rdx + r13*8]
lea rbp, [r15 + rdx]
cmp dword [r15 + rdx + 0x38], 0
jne 0x14010d73b
mov r8, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x30]
lea r9, [r11 + rdx]
add r9, 2
cmp r9, 2
jb 0x14010dcd0
lea r9, [r8 + rdx]
sar r9, 0x3f
btc r9, 0x3f
add r8, rdx
cmovo r8, r9
mov rdx, r8
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r8, r14
test sil, sil
je 0x14010dd16
cmp rdx, r8
setl dl
je 0x14010dc99
neg dl
or dl, 1
test dl, dl
jle 0x14010d7b4
cmp rcx, rbx
je 0x14010d744
jbe 0x14010dc94
mov rax, rbx
shl rax, 7
lea r14, [rax + rbx*8]
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
lea rax, [r15 + r14]
add rax, 0x20
movups xmmword [rax - 0x10], xmm1
movups xmmword [rax - 0x20], xmm0
lea rsi, [rbp + 0x20]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rbp + 0x70]
mov dword [rax + 0x50], ecx
mov cl, byte [rbp + 0x74]
mov byte [rax + 0x54], cl
mov rdx, qword [rbp + 0x78]
mov qword [rbp + 0x78], 0
mov rcx, qword [rax + 0x58]
mov qword [rax + 0x58], rdx
test rcx, rcx
jne 0x14010dbdc
add r15, r14
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x80], 0
mov rcx, qword [r15 + 0x80]
mov qword [r15 + 0x80], rax
test rcx, rcx
mov r14, qword [rsp + 0x30]
jne 0x14010dc1d
mov rax, qword [r10 + 0x40]
mov sil, byte [rsp + 0x2a]
mov rcx, qword [rsp + 0x38]
mov r15, qword [rcx]
mov rcx, rax
sub rcx, r15
sar rcx, 3
imul rcx, r9
cmp rcx, rbx
jbe 0x14010dc94
mov rbx, r13
cmp r12, 1
ja 0x14010d5cd
jmp 0x14010d7b7
mov rdx, qword [rbp + 0x28]
jmp 0x14010d644
cmp rax, qword [r10 + 0x48]
jae 0x14010dc5e
test rax, rax
je 0x14010dc94
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
lea rsi, [rbp + 0x20]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rbp + 0x70]
mov dword [rax + 0x70], ecx
mov cl, byte [rbp + 0x74]
mov byte [rax + 0x74], cl
mov rcx, qword [rbp + 0x78]
mov qword [rax + 0x78], rcx
xor edx, edx
mov qword [rbp + 0x78], rdx
mov rcx, qword [rbp + 0x80]
mov qword [rax + 0x80], rcx
mov qword [rbp + 0x80], rdx
add rax, 0x88
mov qword [r10 + 0x40], rax
jmp 0x14010d708
mov r13, rbx
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
lea rdx, [rsp + 0x110]
movaps xmmword [rdx - 0x10], xmm1
movaps xmmword [rdx - 0x20], xmm0
mov rcx, qword [rsp + 0x78]
mov qword [rdx], rcx
mov rcx, qword [rsp + 0x48]
mov qword [rdx + 8], rcx
mov rcx, qword [rsp + 0x40]
mov qword [rdx + 0x10], rcx
mov ecx, dword [rsp + 0x64]
mov dword [rdx + 0x18], ecx
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmm2, xmmword [rsp + 0xd0]
movups xmmword [rdx + 0x1c], xmm0
movups xmmword [rdx + 0x2c], xmm1
movups xmmword [rdx + 0x3c], xmm2
mov ecx, dword [rsp + 0xe0]
mov dword [rdx + 0x4c], ecx
mov ecx, dword [rsp + 0x2c]
mov dword [rdx + 0x50], ecx
mov cl, byte [rsp + 0x2b]
mov byte [rdx + 0x54], cl
mov r14, qword [rsp + 0x80]
mov qword [rdx + 0x58], r14
mov r8, qword [rsp + 0x88]
mov qword [rdx + 0x60], r8
mov rcx, rax
sub rcx, r15
sar rcx, 3
imul rcx, r9
cmp rcx, r13
je 0x14010da25
jbe 0x14010dc94
mov rax, r13
shl rax, 7
lea rax, [rax + r13*8]
lea rbx, [r15 + rax]
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
lea rax, [r15 + rax + 0x20]
movups xmmword [rax - 0x10], xmm1
movups xmmword [rax - 0x20], xmm0
mov ecx, 0xa
mov rdi, rax
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rdx + 0x50]
mov dword [rax + 0x50], ecx
mov cl, byte [rdx + 0x54]
mov byte [rax + 0x54], cl
mov qword [rsp + 0x168], 0
mov rcx, qword [rax + 0x58]
mov qword [rax + 0x58], r14
test rcx, rcx
mov r14, qword [rsp + 0x58]
mov r15, qword [rsp + 0x50]
jne 0x14010db9b
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x170], 0
mov rcx, qword [rbx + 0x80]
mov qword [rbx + 0x80], rax
test rcx, rcx
jne 0x14010db5a
mov rax, qword [r10 + 0x40]
mov rcx, qword [rsp + 0x38]
sub rax, qword [rcx]
sar rax, 3
imul rax, r9
cmp rax, r13
jbe 0x14010dc94
mov rcx, qword [rsp + 0x170]
test rcx, rcx
jne 0x14010da01
mov rcx, qword [rsp + 0x168]
test rcx, rcx
jne 0x14010d9dd
cmp qword [r10 + 0x20], 0
je 0x14010d971
mov rcx, qword [r10 + 0x38]
cmp rcx, qword [r10 + 0x40]
je 0x14010dd52
mov eax, dword [rcx + 0x38]
mov rsi, qword [rcx + 0x28]
cmp qword [rsp + 0x70], rsi
jne 0x14010daa0
cmp dword [rsp + 0x60], eax
jne 0x14010daa0
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [r15 + 0x78]
test rcx, rcx
jne 0x14010d9a7
mov rcx, qword [r14]
test rcx, rcx
jne 0x14010d9b8
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
cmp rcx, qword [0x14022c040]
je 0x14010d9c9
call fcn.1401363f0
int3
lock dec dword [rcx]
jne 0x14010d985
mov rax, qword [rcx + 0x10]
call qword [0x14021e390]
jmp 0x14010d985
lock dec dword [rcx]
jne 0x14010d98d
mov rax, qword [rcx + 0x10]
call qword [0x14021e390]
jmp 0x14010d98d
add rsp, 0x188
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lock dec dword [rcx]
jne 0x14010d940
mov rax, qword [rcx + 0x10]
mov rsi, r10
mov rdi, r11
call qword [0x14021e390]
mov r11, rdi
mov r10, rsi
jmp 0x14010d940
lock dec dword [rcx]
jne 0x14010d92f
mov rax, qword [rcx + 0x10]
mov rsi, r10
mov rdi, r11
call qword [0x14021e390]
mov r11, rdi
mov r10, rsi
jmp 0x14010d92f
cmp rax, qword [r10 + 0x48]
jae 0x14010db2d
test rax, rax
je 0x14010dc94
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
mov ecx, 0xa
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rdx + 0x50]
mov dword [rax + 0x70], ecx
mov cl, byte [rdx + 0x54]
mov byte [rax + 0x74], cl
mov qword [rax + 0x78], r14
xor ecx, ecx
mov qword [rsp + 0x168], rcx
mov qword [rax + 0x80], r8
mov qword [rsp + 0x170], rcx
add rax, 0x88
mov r14, qword [rsp + 0x58]
mov r15, qword [rsp + 0x50]
mov qword [r10 + 0x40], rax
jmp 0x14010d905
mov rdi, r10
mov rcx, qword [rsp + 0x68]
mov rbx, r11
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rsi, rbx
je 0x14010d97c
mov rbx, qword [rdi + 8]
mov rsi, qword [rdi + 0x20]
test rbx, rbx
jne 0x14010db10
lea rdx, str.AddDelayedTask
lea r8, str....._base_task_thread_pooldelayed_task_manager.cc
lea rdi, [rsp + 0xf0]
mov rcx, rdi
mov r9d, 0x74
call fcn.1400d5a00
lea r8, [rsp + 0xb0]
mov qword [r8], rbx
mov rax, qword [rsi]
mov rax, qword [rax]
mov rcx, rsi
mov rdx, rdi
xor r9d, r9d
call qword [0x14021e390]
jmp 0x14010d97c
mov eax, 1
lock xadd dword [rbx], eax
test eax, eax
jle 0x14010dd5f
cmp eax, 0x7fffffff
jne 0x14010dac7
jmp 0x14010dd5c
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0x38]
mov rsi, r10
mov rdi, r11
call fcn.140016150
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r11, rdi
mov r10, rsi
jmp 0x14010da8d
lock dec dword [rcx]
jne 0x14010d901
mov rdi, r11
mov rsi, r10
mov rax, qword [rcx + 0x10]
lea rdx, [0x140193dd0]
cmp rax, rdx
je 0x14010db94
call qword [0x14021e390]
mov r10, rsi
mov r11, rdi
movabs r9, 0xf0f0f0f0f0f0f0f1
jmp 0x14010d901
call fcn.140133b2c
jmp 0x14010db7f
lock dec dword [rcx]
jne 0x14010d8d6
mov rdi, r11
mov rsi, r10
mov rax, qword [rcx + 0x10]
lea rdx, [0x140193dd0]
cmp rax, rdx
je 0x14010dbd5
call qword [0x14021e390]
mov r10, rsi
mov r11, rdi
movabs r9, 0xf0f0f0f0f0f0f0f1
jmp 0x14010d8d6
call fcn.140133b2c
jmp 0x14010dbc0
lock dec dword [rcx]
jne 0x14010d6d3
mov rdi, r11
mov rsi, r10
mov rax, qword [rcx + 0x10]
lea rdx, [0x140193dd0]
cmp rax, rdx
je 0x14010dc16
call qword [0x14021e390]
mov r10, rsi
mov r11, rdi
movabs r9, 0xf0f0f0f0f0f0f0f1
jmp 0x14010d6d3
call fcn.140133b2c
jmp 0x14010dc01
lock dec dword [rcx]
jne 0x14010d704
mov rdi, r11
mov rsi, r10
mov rax, qword [rcx + 0x10]
lea rdx, [0x140193dd0]
cmp rax, rdx
je 0x14010dc57
call qword [0x14021e390]
mov r10, rsi
mov r11, rdi
movabs r9, 0xf0f0f0f0f0f0f0f1
jmp 0x14010d704
call fcn.140133b2c
jmp 0x14010dc42
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
mov rsi, r10
mov rdi, r11
call fcn.140016150
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r11, rdi
mov r10, rsi
jmp 0x14010d7ab
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14010d461
ud2
int3
mov edx, dword [rbp + 0x70]
cmp edx, dword [rsp + 0x2c]
setl dl
je 0x14010dcbe
neg dl
or dl, 1
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r14, qword [rsp + 0x30]
jmp 0x14010d661
mov r13, rbx
movabs r9, 0xf0f0f0f0f0f0f0f1
jmp 0x14010d7b7
cmp r8, rdx
jne 0x14010dcee
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r14, qword [rsp + 0x30]
mov sil, byte [rsp + 0x2a]
jmp 0x14010d644
add r8, r11
add r8, 2
cmp r8, 1
movabs r9, 0xf0f0f0f0f0f0f0f1
mov r14, qword [rsp + 0x30]
mov sil, byte [rsp + 0x2a]
ja 0x14010d644
int3
mov rsi, qword [rsp + 0x40]
mov r8, rsi
cmp qword [rsp + 0x48], rsi
je 0x14010d650
mov r8, qword [rsp + 0x48]
lea r9, [r11 + r8]
add r9, 2
mov r8, qword [rsp + 0x40]
cmp r9, 1
movabs r9, 0xf0f0f0f0f0f0f0f1
ja 0x14010d650
int3
xor eax, eax
mov rsi, r11
jmp 0x14010d95c
int3
int3