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

Disassembly:
lea rbx, [rsp - 0x98]
cmp rbx, qword [r15 + 8]
jbe fcn.140095bf0
mov rsp, rbx
mov qword [rsp + 0x40], rdx
mov eax, dword [r15 + 0x48]
nop
test eax, eax
je 0x1401ad31a
mov rax, qword [rdx + 0x40]
test rax, rax
je 0x1401ad1f9
mov ecx, 1
lock xadd dword [r14 + 0x334e5c], ecx
lea rcx, [rax + 0xa000]
test rax, rax
cmove rcx, rax
mov eax, ecx
mov dword [rsp + 0x94], eax
mov rdx, 0x18
call fcn.140125030
nop
test rax, rax
je 0x1401ad320
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x88], rax
mov qword [rax], r14
mov rbx, rdx
sub rbx, r14
shr rbx, 3
mov dword [rsp + 0x3c], ebx
movabs rsi, 0x8000000000000000
mov qword [rsp + 0x80], rsi
mov rcx, 0x400
mov r8, rcx
add r8, qword [r14 + 0x2c40f0]
lzcnt rdi, r8
mov ecx, 0x35
sub ecx, edi
mov r9d, ecx
mov ecx, edi
mov r10, rsi
shr r10, cl
mov rcx, r8
and rcx, r10
xor r8, rcx
mov ecx, r8d
movsxd r10, ecx
cmp r10, r8
jne 0x1401ad2e8
cmp r9d, 0x36
jae 0x1401ad2fa
mov r8d, r9d
mov r8d, dword [r14 + r8*4 + 0x2b1500]
test r8d, r8d
je 0x1401acb05
lea r10, [r14 + r8*8]
test r8d, r8d
je 0x1401ad30f
mov r8d, dword [r14 + r8*8 + 4]
cmp r8d, ecx
jle 0x1401accb3
nop dword [rax]
cmp r8d, ecx
jbe 0x1401ad32d
mov r8d, ecx
mov r8d, dword [r10 + r8*4 + 8]
mov edi, ecx
inc edi
test r8d, r8d
je 0x1401acd09
mov r8, r10
mov eax, 0xffffffff
mov r10d, r9d
mov r13d, r10d
mov r12d, edi
mov r10d, eax
mov rdi, r8
nop word [rax + rax]
cmp rdi, r14
je 0x1401ad2c3
mov eax, dword [rdi + 4]
cmp eax, r12d
jle 0x1401ac8cb
cmp eax, r12d
jbe 0x1401ad2d5
mov eax, r12d
mov eax, dword [rdi + rax*4 + 8]
mov r8d, r12d
inc r8d
test eax, eax
je 0x1401ac914
cmp r13d, r9d
jne 0x1401ac8b9
nop dword [rax]
cmp r8d, ecx
je 0x1401acb20
sub dword [r15 + 0x10], 1
jle 0x1401aca9a
mov r12d, r8d
jmp 0x1401ac860
sub dword [r15 + 0x10], 1
nop
jle 0x1401aca73
mov r12d, r8d
jmp 0x1401ac860
mov eax, r13d
inc eax
cmp eax, 0x36
jae 0x1401ad33a
mov r8d, eax
mov r8d, dword [r14 + r8*4 + 0x2b1500]
test r8d, r8d
je 0x1401ac97c
lea rdi, [r14 + r8*8]
test r8d, r8d
je 0x1401ac997
sub dword [r15 + 0x10], 1
nop
jle 0x1401aca86
mov r13d, eax
mov r12d, 0
jmp 0x1401ac860
mov eax, r12d
shl eax, 2
lea eax, [rax + 8]
movsxd rax, eax
mov dword [rsp + 0x78], r12d
mov r12, rax
mov eax, 0
lock cmpxchg dword [rdi + r12], ebx
sete al
movzx eax, al
mov r12d, dword [rdi]
nop dword [rax]
test r12, 2
jne 0x1401aca10
test eax, eax
jne 0x1401acf66
cmp r13d, r9d
jne 0x1401ac9fd
nop
cmp r8d, ecx
je 0x1401acb20
sub dword [r15 + 0x10], 1
jle 0x1401acaf6
mov r12d, r8d
jmp 0x1401ac860
mov r8d, eax
shl r8d, 2
lea r8d, [r8 + 8]
mov r8d, r8d
mov r8d, dword [r14 + r8 + 0x2b14f8]
jmp 0x1401ac8ed
mov r8d, dword [r14 + 0x2b1500]
nop
test r8d, r8d
jne 0x1401ac9d6
mov r8d, dword [r14 + 0x2b1500]
lea r8, [r14 + r8*8]
sub dword [r15 + 0x10], 1
jle 0x1401acaae
mov r12d, 0
mov r10d, r13d
mov rdi, r8
mov r13d, 0
jmp 0x1401ac860
lea r8, [r14 + r8*8]
sub dword [r15 + 0x10], 1
nop
jle 0x1401acacb
mov r12d, 0
mov r10d, r13d
mov rdi, r8
mov r13d, 0
jmp 0x1401ac860
sub dword [r15 + 0x10], 1
jle 0x1401acae8
mov r12d, r8d
jmp 0x1401ac860
mov rdx, rdi
test r12, 1
jne 0x1401aca57
mov r12, rdx
and r12, 0xfffffffffff00000
lea r11, [r12 + 0x1030]
sub rdx, r11
shr rdx, 9
nop dword [rax]
cmp byte [r12 + rdx + 0x30], 0
je 0x1401ac94d
mov byte [r12 + rdx + 0x30], 0
jmp 0x1401ac94d
nop word [rax + rax]
cmp byte [rdx - 8], 0
je 0x1401ac94d
mov byte [rdx - 8], 0
jmp 0x1401ac94d
mov dword [rsp + 0x78], r12d
call fcn.140116590
nop
mov r12d, r8d
jmp 0x1401ac860
call fcn.140116590
nop
mov r13d, eax
mov r12d, 0
jmp 0x1401ac860
mov dword [rsp + 0x78], r12d
nop
call fcn.140116590
nop
mov r12d, r8d
jmp 0x1401ac860
call fcn.140116590
nop
mov r12d, 0
mov r10d, r13d
mov rdi, r8
mov r13d, 0
jmp 0x1401ac860
call fcn.140116590
nop
mov r12d, 0
mov r10d, r13d
mov rdi, r8
mov r13d, 0
jmp 0x1401ac860
call fcn.140116590
nop
mov r12d, r8d
jmp 0x1401ac860
call fcn.140116590
nop
mov r12d, r8d
nop
jmp 0x1401ac860
mov r8d, r9d
shl r8d, 2
lea r8d, [r8 + 8]
mov r8d, r8d
mov r8d, dword [r14 + r8 + 0x2b14f8]
jmp 0x1401ac7fe
cmp r10d, 0x35
je 0x1401ad34d
mov edi, r10d
inc edi
cmp edi, 0x36
jae 0x1401ad35a
mov ecx, edi
mov ecx, dword [r14 + rcx*4 + 0x2b1500]
mov eax, edi
shl eax, 2
lea eax, [rax + 8]
mov r9d, eax
test ecx, ecx
je 0x1401accfc
test ecx, ecx
jne 0x1401acda9
mov eax, 0x400
mov ecx, edi
shl eax, cl
cmp r10d, 0x34
je 0x1401acd50
test eax, eax
jl 0x1401ad380
mov ecx, eax
lea rdx, [r14 + 0x2454d8]
mov r8, qword [r15 + 0x28]
mov r10, qword [r15 + 0x20]
sub rdx, r14
shl rdx, 2
mov r11d, ecx
shl r11, 2
lea r11, [r11 + 0xf]
and r11, 0xfffffffffffffff8
nop
cmp r11, 0x20000
jae 0x1401acee8
mov r12, r11
add r12, r8
cmp r12, r10
ja 0x1401acee8
mov qword [r15 + 0x28], r12
prefetchnta byte [r11 + r8 + 0xc0]
prefetchnta byte [r11 + r8 + 0x100]
prefetchnta byte [r11 + r8 + 0x140]
prefetchnta byte [r11 + r8 + 0x180]
mov dword [r8], edx
mov dword [r8 + 4], ecx
lea rcx, [r11 - 8]
cmp rcx, 0x800
jae 0x1401acf3e
mov rdx, 8
jmp 0x1401acc2c
mov qword [r8 + rdx], 0
lea rdx, [rdx + 8]
cmp r11, rdx
ja 0x1401acc20
mov dword [r8 + 8], ebx
mov edx, dword [r8]
nop dword [rax + rax]
test rdx, 2
jne 0x1401acdcf
mov dword [rsp + 0x78], eax
sub r8, r14
shr r8, 3
mov eax, 0
lock cmpxchg dword [r14 + r9 + 0x2b14f8], r8d
sete dl
movzx edx, dl
lea r8, [r14 + 0x2b14f8]
mov eax, dword [r8]
nop word [rax + rax]
test rax, 2
jne 0x1401ace15
test edx, edx
jne 0x1401ad186
sub dword [r15 + 0x10], 1
jg 0x1401ac7a0
mov dword [rsp + 0x6c], edi
call fcn.140116590
nop
mov ebx, dword [rsp + 0x3c]
jmp 0x1401ac7a0
mov r8d, 0x36
mov r10d, r8d
sub r10d, edi
nop
cmp r10d, 0x36
jae 0x1401ad36e
mov r8d, r10d
mov r8d, dword [r14 + r8*4 + 0x2b1500]
test r8d, r8d
je 0x1401acd5a
nop
test r8d, r8d
je 0x1401acd75
lea r8, [r14 + r8*8]
mov eax, 0xffffffff
mov edi, 0
jmp 0x1401ac849
mov ecx, dword [r14 + r9 + 0x2b14f8]
jmp 0x1401acb55
mov r8d, ecx
shl r8d, 2
lea r8d, [r8 + 8]
movsxd r8, r8d
mov eax, 0
lock cmpxchg dword [r10 + r8], ebx
sete al
movzx eax, al
mov r8d, dword [r10]
test r8, 2
jne 0x1401ace76
test eax, eax
jne 0x1401ad1eb
mov r8, r10
mov eax, 0xffffffff
mov r10d, r9d
jmp 0x1401ac849
mov ecx, 0x3ff
jmp 0x1401acb7a
mov r8d, r10d
shl r8d, 2
lea r8d, [r8 + 8]
mov r8d, r8d
mov r8d, dword [r14 + r8 + 0x2b14f8]
jmp 0x1401accde
mov eax, dword [r14 + 0x2b1500]
nop dword [rax]
test eax, eax
jne 0x1401ace5c
mov eax, dword [r14 + 0x2b1500]
lea rax, [r14 + rax*8]
mov r8, rax
mov eax, r9d
mov edi, 0
mov r10d, 0
jmp 0x1401ac849
sub dword [r15 + 0x10], 1
jg 0x1401ac7a0
mov dword [rsp + 0x6c], edi
lea rcx, [r14 + rcx*8]
nop dword [rax]
call fcn.140116590
nop
mov ebx, dword [rsp + 0x3c]
jmp 0x1401ac7a0
mov rcx, r8
test rdx, 1
jne 0x1401acebc
mov rdx, rcx
and rdx, 0xfffffffffff00000
lea r10, [rdx + 0x1030]
sub rcx, r10
shr rcx, 9
nop word [rax + rax]
cmp byte [rdx + rcx + 0x30], 0
je 0x1401acc4d
mov byte [rdx + rcx + 0x30], 0
jmp 0x1401acc4d
nop word [rax + rax]
test rax, 1
jne 0x1401aced3
mov rax, r8
and rax, 0xfffffffffff00000
lea rcx, [rax + 0x1030]
sub r8, rcx
shr r8, 9
cmp byte [rax + r8 + 0x30], 0
je 0x1401acc8d
mov byte [rax + r8 + 0x30], 0
jmp 0x1401acc8d
lea rax, [r14 + rax*8]
mov r8, rax
mov eax, r9d
mov edi, 0
mov r10d, 0
jmp 0x1401ac849
mov r12, r10
nop dword [rax]
test r8, 1
jne 0x1401acf27
mov r8, r12
and r8, 0xfffffffffff00000
lea r13, [r8 + 0x1030]
sub r12, r13
shr r12, 9
cmp byte [r8 + r12 + 0x30], 0
je 0x1401acd38
mov byte [r8 + r12 + 0x30], 0
jmp 0x1401acd38
nop dword [rax]
cmp byte [rcx - 8], 0
je 0x1401acc4d
mov byte [rcx - 8], 0
jmp 0x1401acc4d
cmp byte [r8 - 8], 0
je 0x1401acc8d
mov byte [r8 - 8], 0
jmp 0x1401acc8d
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x70], r9
mov dword [rsp + 0x6c], edi
mov r8d, ecx
mov dword [rsp + 0x68], ecx
nop dword [rax]
call fcn.14007ecd0
nop
mov r8, rax
mov eax, dword [rsp + 0x78]
mov r9, qword [rsp + 0x70]
mov edi, dword [rsp + 0x6c]
mov rsi, qword [rsp + 0x80]
mov ebx, dword [rsp + 0x3c]
jmp 0x1401acc31
cmp byte [r12 - 8], 0
je 0x1401acd38
mov byte [r12 - 8], 0
jmp 0x1401acd38
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x70], r9
mov dword [rsp + 0x6c], edi
lea rdi, [r8 + 8]
xor rax, rax
rep stosb byte [rdi], al
mov eax, dword [rsp + 0x78]
mov edi, dword [rsp + 0x6c]
mov ebx, dword [rsp + 0x3c]
jmp 0x1401acc31
mov r12d, dword [rsp + 0x78]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x40]
mov r8d, dword [rdi + 4]
mov r9d, 0x400
mov ecx, r13d
shl r9d, cl
mov ecx, r12d
inc ecx
cmp r8d, ecx
mov r8d, r12d
cmovg r8d, ecx
mov ecx, r9d
add ecx, r8d
movsxd rcx, ecx
lea rcx, [rcx - 0x400]
mov qword [r14 + 0x2c40f0], rcx
lock add dword [rsp], 0
add r9d, r12d
movsxd rcx, r9d
lea rcx, [rcx - 0x3ff]
mov qword [rax + 8], rcx
cmp byte [rdx + 0x58], 0
je 0x1401ad1ca
mov ebx, dword [rsp + 0x94]
lea r10, [rsp + 0x60]
lea r13, [rsp + 0x48]
mov qword [r13], 0
mov qword [r13 + 8], 0
mov rcx, qword [r15 + 0x38]
mov qword [r13 + 0x10], rcx
mov qword [r15 + 0x38], r13
mov r8, qword [r14 + 0x25d930]
mov rsi, qword [str.3__]
test ebx, ebx
mov ecx, 4
mov edi, 0x10004
cmove edi, ecx
mov rcx, 0
mov edx, ebx
mov r9, rax
mov dword [rsp + 0x20], edi
mov qword [rsp + 0x28], r10
mov eax, 0
mov r10, rsi
lea r12, [0x1401ad03c]
mov qword [r13], r12
mov qword [r13 + 8], rsp
mov dword [r15 + 0x14], 3
call r10
nop
cmp dword [r15 + 0xcc], 0
jne 0x1401ad28b
mov rcx, rax
mov eax, 3
mov r10d, 1
lock cmpxchg dword [r15 + 0x14], r10d
jne 0x1401ad2b3
mov rax, qword [r15 + 0x38]
mov rax, qword [rax + 0x10]
mov qword [r15 + 0x38], rax
test rcx, rcx
je 0x1401ad142
mov rax, qword [rsp + 0x88]
mov qword [rax + 0x10], rcx
lea r13, [rsp + 0x48]
mov qword [r13], 0
mov qword [r13 + 8], 0
mov rax, qword [r15 + 0x38]
mov qword [r13 + 0x10], rax
mov qword [r15 + 0x38], r13
mov r10, qword [0x1402d82e0]
mov eax, 0
lea r12, [0x1401ad0cd]
mov qword [r13], r12
mov qword [r13 + 8], rsp
mov dword [r15 + 0x14], 3
call r10
nop
cmp dword [r15 + 0xcc], 0
jne 0x1401ad2bd
mov dword [rsp + 0x78], eax
mov eax, 3
mov edx, 1
lock cmpxchg dword [r15 + 0x14], edx
jne 0x1401ad271
mov rax, qword [r15 + 0x38]
mov rax, qword [rax + 0x10]
mov qword [r15 + 0x38], rax
mov rdx, qword [rsp + 0x40]
mov ecx, 5
mov eax, 0
lock cmpxchg dword [rdx + 0x54], ecx
sete al
movzx eax, al
add rsp, 0x98
sub dword [r15 + 0x10], 1
jle fcn.140116590
ret
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x40]
cmp byte [rdx + 0x58], 0
je 0x1401ad1dd
mov rdx, qword [rsp + 0x88]
call fcn.140125010
nop
mov edx, 0xffffffff
lock xadd dword [r14 + 0x334e5c], edx
lea rdx, [r14 + 0x1db9a0]
nop dword [rax]
call fcn.14003c490
nop
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x78]
inc ecx
movsxd rcx, ecx
lea rcx, [rcx - 0x400]
mov qword [r14 + 0x2c40f0], rcx
lock add dword [rsp], 0
movsxd rcx, dword [rsp + 0x78]
lea rcx, [rcx - 0x3ff]
mov qword [rax + 8], rcx
nop
cmp byte [rdx + 0x58], 0
jne 0x1401acfce
mov ecx, 1
lock xadd dword [r14 + 0x334c8c], ecx
jmp 0x1401acfce
nop
call fcn.140114690
nop
jmp 0x1401ad159
mov rdi, r10
mov r12d, ecx
mov r13d, r9d
jmp 0x1401acf6b
mov ecx, dword [r14 + 0x33499c]
test ecx, ecx
je 0x1401ad266
mov r8d, dword [r14 + rcx*8]
shr r8d, 5
lea rcx, [r14 + rcx*8]
nop dword [rax + rax]
nop
cmp r8d, 0x4718f
jne 0x1401ad398
lea r8, [r14 + 0x325858]
mov rdx, rcx
call fcn.1402a0440
nop
nop
cmp rax, r14
je 0x1401ad26b
mov edx, dword [rax]
shr edx, 5
cmp edx, 0x47a46
jne 0x1401ad3a8
mov rdx, qword [rax + 8]
mov rax, rdx
jmp 0x1401ac735
mov rcx, r14
jmp 0x1401ad22d
call fcn.14010b4b0
nop
mov edx, 1
mov r8d, 1
nop dword [rax]
call fcn.140116b40
nop
jmp 0x1401ad115
mov qword [rsp + 0x80], rax
mov edx, 1
mov r8d, 1
nop
call fcn.140116b40
nop
mov rcx, qword [rsp + 0x80]
jmp 0x1401ad084
mov qword [rsp + 0x80], rcx
jmp 0x1401ad293
mov dword [rsp + 0x78], eax
jmp 0x1401ad271
mov dword [rsp + 0x78], r12d
mov ebx, dword [rsp + 0x94]
call fcn.14010b4b0
nop
mov ebx, dword [rsp + 0x94]
mov edx, r12d
mov r8d, eax
call fcn.14010b8d0
nop
mov dword [rsp + 0x7c], r9d
lea rdx, [r14 + 0x1d9930]
call fcn.140037120
nop
mov dword [rsp + 0x7c], r9d
mov edx, dword [rsp + 0x7c]
mov r8d, 0x36
call fcn.14010b8d0
nop
mov dword [rsp + 0x7c], r9d
call fcn.14010b4b0
nop
call fcn.14010b4b0
nop
lea rdx, [r14 + 0x1db9b8]
call fcn.14003c490
nop
mov dword [rsp + 0x7c], r9d
mov edx, ecx
call fcn.14010b8d0
nop
mov dword [rsp + 0x7c], r9d
mov edx, eax
mov r8d, 0x36
call fcn.14010b8d0
nop
lea rdx, [r14 + 0x1d9948]
call fcn.140039640
nop
mov dword [rsp + 0x6c], edi
mov edx, dword [rsp + 0x6c]
mov r8d, 0x36
call fcn.14010b8d0
nop
mov eax, r9d
mov edx, r10d
mov r8d, 0x36
call fcn.14010b8d0
nop
mov rcx, qword [rsp + 0x88]
mov r8d, dword [rsp + 0x94]
mov edx, eax
call fcn.14010ac10
nop
lea r8, [r14 + 0x1ba470]
mov rdx, rcx
call fcn.140109560
nop
mov rcx, qword [rsp + 0x40]
lea r8, [r14 + 0x23d230]
mov rdx, rax
call fcn.140109560
nop
int3