Function at 0x140170d50
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, 0x228
mov r10, rcx
mov rax, qword [0x1402e0038]
xor rax, rsp
mov qword [rsp + 0x220], rax
mov rcx, qword [rcx + 8]
mov rax, qword [r10 + 0x10]
sub rax, rcx
sar rax, 3
movabs r11, 0xcf3cf3cf3cf3cf3d
imul rax, r11
cmp rax, rdx
jbe 0x14017218b
mov r13, rdx
imul rax, rdx, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x140170df3
mov dl, byte [rdx + 4]
test dl, dl
jne 0x140170df3
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x140170df3
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x1401721e8
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1401721e8
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], 0xffffffffffffffff
mov rcx, qword [r10 + 8]
mov rdx, qword [r10 + 0x10]
sub rdx, rcx
sar rdx, 3
imul rdx, r11
cmp rdx, r13
jbe 0x14017218e
mov r15, qword [rcx + rax + 0x78]
xor edx, edx
mov qword [rcx + rax + 0x78], rdx
mov r8b, byte [rcx + rax + 0x81]
mov byte [rsp + 0x2f], r8b
mov r14, qword [rcx + rax + 0x88]
mov qword [rcx + rax + 0x88], rdx
mov r8, qword [rcx + rax + 0x98]
mov qword [rsp + 0x98], r8
mov qword [rcx + rax + 0x98], rdx
mov rax, qword [r10 + 8]
mov rdi, qword [r10 + 0x10]
mov rcx, rdi
sub rcx, rax
sar rcx, 3
imul rcx, r11
dec rcx
cmp rcx, r13
mov qword [rsp + 0x20], r10
je 0x140171975
cmp rdi, rax
je 0x1401721b5
imul rcx, rcx, 0xa8
mov rdx, qword [rax + rcx + 0x98]
test rdx, rdx
je 0x140170ed2
mov dl, byte [rdx + 4]
test dl, dl
jne 0x140170ed2
add rax, rcx
cmp qword [rax + 0xa0], 0
je 0x140170ed2
mov rcx, qword [rax + 0x98]
test rcx, rcx
je 0x1401721eb
mov cl, byte [rcx + 4]
test cl, cl
jne 0x1401721eb
mov rax, qword [rax + 0xa0]
mov qword [rax + 0x10], 0xffffffffffffffff
mov qword [rsp + 0x50], r14
mov rax, qword [r10 + 0x10]
cmp rax, qword [r10 + 8]
je 0x1401721b8
lea rcx, [r10 + 8]
mov qword [rsp + 0x30], rcx
movups xmm0, xmmword [rax - 0xa8]
movups xmm1, xmmword [rax - 0x98]
movaps xmmword [rsp + 0xb0], xmm1
movaps xmmword [rsp + 0xa0], xmm0
mov rcx, qword [rax - 0x88]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rax - 0x80]
mov qword [rsp + 0x80], rcx
mov rcx, qword [rax - 0x78]
mov qword [rsp + 0x78], rcx
mov ecx, dword [rax - 0x70]
mov dword [rsp + 0x38], ecx
mov ecx, dword [rax - 0x3c]
mov dword [rsp + 0x120], ecx
movups xmm0, xmmword [rax - 0x4c]
movaps xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rax - 0x5c]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rax - 0x6c]
movaps xmmword [rsp + 0xf0], xmm0
mov ecx, dword [rax - 0x38]
mov dword [rsp + 0x3c], ecx
mov cl, byte [rax - 0x34]
mov byte [rsp + 0x2e], cl
mov rcx, qword [rax - 0x30]
mov qword [rsp + 0x48], rcx
xor ecx, ecx
mov qword [rax - 0x30], rcx
mov dl, byte [rax - 0x26]
mov byte [rsp + 0xe2], dl
movzx edx, word [rax - 0x28]
mov word [rsp + 0xe0], dx
mov rdx, qword [rax - 0x20]
mov qword [rsp + 0x68], rdx
mov rdx, qword [rax - 0x18]
mov qword [rsp + 0x70], rdx
mov qword [rax - 0x20], rcx
mov rdx, qword [rax - 0x10]
mov qword [rsp + 0x60], rdx
mov qword [rax - 0x10], rcx
mov rax, qword [rax - 8]
mov qword [rsp + 0x58], rax
mov r14, qword [r10 + 0x10]
sub r14, qword [r10 + 8]
sar r14, 3
imul r14, r11
dec r14
lea rcx, [r13*2 + 1]
cmp rcx, r14
jae 0x14017129f
lea rdx, [r13*2]
mov r9, r13
add rdx, 2
mov rbx, qword [r10 + 8]
mov rax, qword [r10 + 0x10]
mov r8, rax
sub r8, rbx
sar r8, 3
imul r8, r11
cmp rdx, r14
jae 0x140171d53
cmp r8, rdx
jbe 0x1401721c7
cmp r8, rcx
jbe 0x1401721ca
mov r12, r9
mov rbp, r11
imul r10, rcx, 0xa8
lea r9, [rbx + r10]
cmp dword [rbx + r10 + 0x38], 0
je 0x140171e8a
mov r10, qword [r9 + 0x28]
imul r11, rdx, 0xa8
add r11, rbx
cmp dword [r11 + 0x38], 0
je 0x140171e2b
mov rsi, qword [r11 + 0x28]
mov r9d, dword [r9 + 0x70]
xor edi, edi
cmp r9d, dword [r11 + 0x70]
setg dil
xor r9d, r9d
cmp r10, rsi
setge r9b
cmovne edi, r9d
test dil, dil
jne 0x140171086
mov rdx, rcx
mov r13, rdx
mov r10, qword [rsp + 0x20]
mov r11, rbp
mov r9, r12
cmp r8, r9
je 0x140171d5b
cmp r8, r13
jbe 0x1401721cd
cmp r8, r9
jbe 0x1401721d0
imul r12, r13, 0xa8
imul rbp, r9, 0xa8
lea rax, [rbx + r12]
add rax, 0x20
movups xmm0, xmmword [rax - 0x20]
movups xmm1, xmmword [rax - 0x10]
lea rdx, [rbx + rbp + 0x20]
movups xmmword [rdx - 0x10], xmm1
movups xmmword [rdx - 0x20], xmm0
mov ecx, 0xa
mov rdi, rdx
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rax + 0x50]
mov dword [rdx + 0x50], ecx
mov cl, byte [rax + 0x54]
mov byte [rdx + 0x54], cl
mov r8, qword [rax + 0x58]
mov qword [rax + 0x58], 0
mov rcx, qword [rdx + 0x58]
mov qword [rdx + 0x58], r8
test rcx, rcx
jne 0x140171fd0
add r12, rbx
add rbp, rbx
mov al, byte [r12 + 0x82]
mov byte [rbp + 0x82], al
movzx eax, word [r12 + 0x80]
mov word [rbp + 0x80], ax
mov rax, qword [r12 + 0x88]
mov qword [r12 + 0x88], 0
mov rcx, qword [rbp + 0x88]
mov qword [rbp + 0x88], rax
test rcx, rcx
jne 0x140172216
mov rax, qword [r12 + 0x90]
mov qword [rbp + 0x90], rax
mov rax, qword [r12 + 0x98]
mov qword [r12 + 0x98], 0
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0x98], rax
test rcx, rcx
je 0x1401711b1
lock dec dword [rcx]
jne 0x1401711b1
mov rsi, r11
mov rdi, r9
call fcn.14010cc0c
mov r9, rdi
mov r11, rsi
mov r10, qword [rsp + 0x20]
mov rax, qword [r12 + 0xa0]
mov qword [rbp + 0xa0], rax
mov rax, qword [r10 + 0x10]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
sub rax, rcx
sar rax, 3
imul rax, r11
cmp rax, r9
jbe 0x1401721d3
imul rax, r9, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x14017122e
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14017122e
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14017122e
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x1401721df
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1401721df
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], r9
mov rcx, qword [r10 + 8]
mov rdx, qword [r10 + 0x10]
sub rdx, rcx
sar rdx, 3
imul rdx, r11
cmp rdx, r9
jbe 0x1401721d6
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x140171286
mov dl, byte [rdx + 4]
test dl, dl
jne 0x140171286
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x140171286
mov rax, qword [rcx + 0x98]
test rax, rax
je 0x1401721e2
mov al, byte [rax + 4]
test al, al
jne 0x1401721e2
lea rdx, [r13*2]
lea rcx, [r13*2 + 1]
cmp rcx, r14
jb 0x140170ff0
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmm1, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0xd0], xmm1
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmm2, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x140], xmm1
movaps xmmword [rsp + 0x150], xmm2
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x160], eax
movzx eax, word [rsp + 0xe0]
mov word [rsp + 0xe8], ax
mov al, byte [rsp + 0xe2]
mov byte [rsp + 0xea], al
test r13, r13
je 0x140172180
mov r8, qword [rsp + 0x80]
mov r9, qword [rsp + 0x78]
lea rax, [r8 + r9]
sar rax, 0x3f
btc rax, 0x3f
mov r14, r8
add r14, r9
movabs rdx, 0x8000000000000001
lea rcx, [r9 + rdx - 2]
cmovo r14, rax
lea rax, [r8 + rdx]
add rax, 0xfffffffffffffffe
cmp rax, 0xfffffffffffffffe
setb al
cmp r8, r9
sete dl
or dl, al
cmp rcx, 0xfffffffffffffffe
cmovae r14, r9
setb al
cmp dword [rsp + 0x38], 0
cmovne r14, r8
setne dil
or dil, al
or dil, dl
mov r12, r13
lea rsi, [r13 - 1]
mov r13, rsi
shr r13, 1
mov rbp, qword [r10 + 8]
mov rax, qword [r10 + 0x10]
mov rcx, rax
sub rcx, rbp
sar rcx, 3
imul rcx, r11
cmp rcx, r13
jbe 0x1401721bb
imul rdx, r13, 0xa8
lea rbx, [rdx + rbp]
cmp dword [rbp + rdx + 0x38], 0
je 0x1401715da
mov rdx, qword [rbx + 0x28]
test dil, dil
je 0x140172188
xor r8d, r8d
mov r9d, dword [rsp + 0x3c]
cmp dword [rbx + 0x70], r9d
setg r8b
xor r9d, r9d
cmp rdx, r14
setge r9b
cmovne r8d, r9d
cmp r8b, 1
jne 0x140171663
cmp rcx, r12
mov qword [rsp + 0x40], rsi
je 0x140171ee6
mov byte [rsp + 0x2d], dil
mov qword [rsp + 0x88], r15
jbe 0x1401721a3
imul r15, r12, 0xa8
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
lea rax, [r15 + rbp]
add rax, 0x20
movups xmmword [rax - 0x10], xmm1
movups xmmword [rax - 0x20], xmm0
lea rsi, [rbx + 0x20]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rbx + 0x70]
mov dword [rax + 0x50], ecx
mov cl, byte [rbx + 0x74]
mov byte [rax + 0x54], cl
mov rdx, qword [rbx + 0x78]
mov qword [rbx + 0x78], 0
mov rcx, qword [rax + 0x58]
mov qword [rax + 0x58], rdx
test rcx, rcx
jne 0x1401720cb
add rbp, r15
mov al, byte [rbx + 0x82]
mov byte [rbp + 0x82], al
movzx eax, word [rbx + 0x80]
mov word [rbp + 0x80], ax
mov rax, qword [rbx + 0x88]
mov qword [rbx + 0x88], 0
mov rcx, qword [rbp + 0x88]
mov qword [rbp + 0x88], rax
test rcx, rcx
mov r8, qword [rsp + 0x40]
jne 0x14017223b
mov rax, qword [rbx + 0x90]
mov qword [rbp + 0x90], rax
mov rax, qword [rbx + 0x98]
mov qword [rbx + 0x98], 0
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0x98], rax
test rcx, rcx
mov r15, qword [rsp + 0x88]
mov dil, byte [rsp + 0x2d]
je 0x14017151f
lock dec dword [rcx]
jne 0x14017151f
mov rsi, r11
call fcn.14010cc0c
mov r11, rsi
mov r8, qword [rsp + 0x40]
mov r10, qword [rsp + 0x20]
mov rax, qword [rbx + 0xa0]
mov qword [rbp + 0xa0], rax
mov rax, qword [r10 + 0x10]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
sub rax, rcx
sar rax, 3
imul rax, r11
cmp rax, r12
jbe 0x1401721a6
imul rax, r12, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x14017159b
mov dl, byte [rdx + 4]
test dl, dl
jne 0x14017159b
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x14017159b
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x1401721ac
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1401721ac
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], r12
mov rcx, qword [r10 + 8]
mov rdx, qword [r10 + 0x10]
sub rdx, rcx
sar rdx, 3
imul rdx, r11
cmp rdx, r12
jbe 0x1401721a9
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x1401715cb
mov dl, byte [rdx + 4]
test dl, dl
je 0x140171636
cmp r8, 1
jbe 0x140171666
jmp 0x14017138c
mov r8, qword [rbx + 0x28]
mov rdx, qword [rbx + 0x30]
movabs r9, 0x8000000000000001
add r9, rdx
cmp r9, 2
jb 0x140171611
lea r9, [r8 + rdx]
sar r9, 0x3f
btc r9, 0x3f
add r8, rdx
cmovo r8, r9
mov rdx, r8
jmp 0x1401713d2
cmp r8, rdx
je 0x1401713d2
movabs r9, 0x8000000000000001
add r8, r9
cmp r8, 1
ja 0x1401713d2
jmp 0x1401721af
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x1401715cb
mov rax, qword [rcx + 0x98]
test rax, rax
je 0x1401721a0
mov al, byte [rax + 4]
test al, al
je 0x1401715cb
jmp 0x1401721a0
mov r13, r12
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
lea rdx, [rsp + 0x190]
movaps xmmword [rdx - 0x10], xmm1
movaps xmmword [rdx - 0x20], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rdx], rax
mov rax, qword [rsp + 0x80]
mov qword [rdx + 8], rax
mov rax, qword [rsp + 0x78]
mov qword [rdx + 0x10], rax
mov eax, dword [rsp + 0x38]
mov dword [rdx + 0x18], eax
movaps xmm0, xmmword [rsp + 0x130]
movaps xmm1, xmmword [rsp + 0x140]
movaps xmm2, xmmword [rsp + 0x150]
movups xmmword [rdx + 0x1c], xmm0
movups xmmword [rdx + 0x2c], xmm1
movups xmmword [rdx + 0x3c], xmm2
mov eax, dword [rsp + 0x160]
mov dword [rdx + 0x4c], eax
mov eax, dword [rsp + 0x3c]
mov dword [rdx + 0x50], eax
mov al, byte [rsp + 0x2e]
mov byte [rdx + 0x54], al
mov rax, qword [rsp + 0x48]
mov qword [rdx + 0x58], rax
mov al, byte [rsp + 0xea]
mov byte [rdx + 0x62], al
movzx eax, word [rsp + 0xe8]
mov word [rdx + 0x60], ax
mov rax, qword [rsp + 0x68]
mov qword [rdx + 0x68], rax
mov rax, qword [rsp + 0x70]
mov qword [rdx + 0x70], rax
mov rax, qword [rsp + 0x60]
mov qword [rdx + 0x78], rax
mov rax, qword [rsp + 0x58]
mov qword [rdx + 0x80], rax
mov rcx, qword [r10 + 8]
mov rax, qword [r10 + 0x10]
mov r8, rax
sub r8, rcx
sar r8, 3
imul r8, r11
cmp r8, r13
je 0x140171a43
jbe 0x1401721e5
lea r14, [rsp + 0x1f0]
imul rax, r13, 0xa8
lea rbx, [rcx + rax]
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
add rax, rcx
add 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 [r14 - 8], 0
mov rcx, qword [rax + 0x58]
mov rdx, qword [rsp + 0x48]
mov qword [rax + 0x58], rdx
test rcx, rcx
jne 0x140171fad
mov al, byte [r14 + 2]
mov byte [rbx + 0x82], al
movzx eax, word [r14]
mov word [rbx + 0x80], ax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x1f8], 0
mov rcx, qword [rbx + 0x88]
mov qword [rbx + 0x88], rax
test rcx, rcx
jne 0x1401721f4
mov rax, qword [rsp + 0x200]
mov qword [rbx + 0x90], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x208], 0
mov rcx, qword [rbx + 0x98]
mov qword [rbx + 0x98], rax
test rcx, rcx
mov r14, qword [rsp + 0x50]
je 0x14017184e
lock dec dword [rcx]
jne 0x14017184e
mov rsi, r11
call fcn.14010cc0c
mov r11, rsi
mov r10, qword [rsp + 0x20]
mov rax, qword [rsp + 0x210]
mov qword [rbx + 0xa0], rax
mov rax, qword [r10 + 0x10]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
sub rax, rcx
sar rax, 3
imul rax, r11
cmp rax, r13
jbe 0x1401721be
imul rax, r13, 0xa8
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x1401718cb
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1401718cb
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x1401718cb
mov rdx, qword [rcx + 0x98]
test rdx, rdx
je 0x1401721f1
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1401721f1
mov rcx, qword [rcx + 0xa0]
mov qword [rcx + 0x10], r13
mov rcx, qword [r10 + 8]
mov rdx, qword [r10 + 0x10]
sub rdx, rcx
sar rdx, 3
imul rdx, r11
cmp rdx, r13
jbe 0x1401721c1
mov rdx, qword [rcx + rax + 0x98]
test rdx, rdx
je 0x140171923
mov dl, byte [rdx + 4]
test dl, dl
jne 0x140171923
add rcx, rax
cmp qword [rcx + 0xa0], 0
je 0x140171923
mov rax, qword [rcx + 0x98]
test rax, rax
je 0x1401721ee
mov al, byte [rax + 4]
test al, al
jne 0x1401721ee
mov rcx, qword [rsp + 0x208]
test rcx, rcx
je 0x14017193f
lock dec dword [rcx]
jne 0x14017193f
call fcn.14010cc0c
mov r10, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x1f8]
test rsi, rsi
jne 0x140171a34
mov rsi, qword [rsp + 0x1e8]
mov qword [rsp + 0x1e8], 0
test rsi, rsi
jne 0x140171c16
mov rax, qword [r10 + 8]
mov rdi, qword [r10 + 0x10]
cmp rax, rdi
je 0x140172191
mov rbx, rdi
add rbx, 0xffffffffffffff58
je 0x140172194
mov rcx, qword [rdi - 0x10]
test rcx, rcx
je 0x1401719a6
lock dec dword [rcx]
jne 0x1401719a6
call fcn.14010cc0c
mov r10, qword [rsp + 0x20]
mov rsi, qword [rdi - 0x20]
test rsi, rsi
jne 0x140171a29
mov rsi, qword [rdi - 0x30]
mov qword [rdi - 0x30], 0
test rsi, rsi
jne 0x140171b6f
mov qword [r10 + 0x10], rbx
cmp byte [rsp + 0x2f], 0
jne 0x140172197
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x1401719ea
lock dec dword [rcx]
jne 0x1401719ea
call fcn.14010cc0c
test r14, r14
jne 0x140171a1d
test r15, r15
jne 0x140171b0b
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.14010fba0
nop
add rsp, 0x228
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lock dec dword [r14 + 8]
jne 0x1401719ef
jmp 0x140171ff9
lock dec dword [rsi + 8]
jne 0x1401719af
jmp 0x140171cec
lock dec dword [rsi + 8]
jne 0x140171950
jmp 0x140172061
cmp rax, qword [r10 + 0x18]
mov r14, qword [rsp + 0x50]
jae 0x140171bdf
test rax, rax
je 0x140172213
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
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 rcx, qword [rsp + 0x48]
mov qword [rax + 0x78], rcx
xor ecx, ecx
mov qword [rsp + 0x1e8], rcx
mov dl, byte [rsp + 0xea]
mov byte [rax + 0x82], dl
movzx edx, word [rsp + 0xe8]
mov word [rax + 0x80], dx
mov rdx, qword [rsp + 0x68]
mov qword [rax + 0x88], rdx
mov qword [rsp + 0x1f8], rcx
mov rdx, qword [rsp + 0x70]
mov qword [rax + 0x90], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rax + 0x98], rdx
mov qword [rsp + 0x208], rcx
mov rcx, qword [rsp + 0x58]
mov qword [rax + 0xa0], rcx
add rax, 0xa8
mov qword [r10 + 0x10], rax
jmp 0x140171861
lock dec dword [r15]
jne 0x1401719f8
mov rsi, qword [r15 + 0x10]
lea rax, [0x14008faa0]
cmp rsi, rax
je 0x140171c9f
lea rax, [0x1400f5350]
cmp rsi, rax
je 0x140171cb4
mov rdi, qword [0x140318008]
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.14010fba0
mov rcx, r15
mov rax, rsi
mov rdx, rdi
add rsp, 0x228
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp rdx
lock dec dword [rsi]
jne 0x140171bb5
mov rax, qword [rsi + 0x10]
lea rcx, [0x14008faa0]
cmp rax, rcx
je 0x140171c01
lea rcx, [0x1400f5350]
cmp rax, rcx
je 0x140171b9b
mov rcx, rsi
call qword [0x140318008]
jmp 0x140171bb0
mov rcx, qword [rsi + 0x28]
test rcx, rcx
jne 0x14017212e
mov rcx, rsi
call fcn.14010cc0c
mov r10, qword [rsp + 0x20]
mov rcx, qword [rdi - 0x30]
test rcx, rcx
je 0x1401719c4
lock dec dword [rcx]
jne 0x1401719c4
mov rax, qword [rcx + 0x10]
call qword [0x140318008]
mov r10, qword [rsp + 0x20]
jmp 0x1401719c4
lea rdx, [rsp + 0x170]
mov rcx, qword [rsp + 0x30]
mov rsi, r11
call fcn.1400a7720
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x140171b02
mov rcx, qword [rsi + 0x28]
test rcx, rcx
je 0x140171ba8
lock dec dword [rcx]
jne 0x140171ba8
call fcn.14010cc0c
jmp 0x140171ba8
lock dec dword [rsi]
jne 0x140171c5c
mov rax, qword [rsi + 0x10]
lea rcx, [0x14008faa0]
cmp rax, rcx
je 0x140171c8a
lea rcx, [0x1400f5350]
cmp rax, rcx
je 0x140171c42
mov rcx, rsi
call qword [0x140318008]
jmp 0x140171c57
mov rcx, qword [rsi + 0x28]
test rcx, rcx
jne 0x14017215e
mov rcx, rsi
call fcn.14010cc0c
mov r10, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x14017196d
lock dec dword [rcx]
jne 0x14017196d
mov rax, qword [rcx + 0x10]
call qword [0x140318008]
mov r10, qword [rsp + 0x20]
jmp 0x14017196d
mov rcx, qword [rsi + 0x28]
test rcx, rcx
je 0x140171c4f
lock dec dword [rcx]
jne 0x140171c4f
call fcn.14010cc0c
jmp 0x140171c4f
mov rcx, qword [r15 + 0x28]
test rcx, rcx
je 0x140171cc1
lock dec dword [rcx]
jne 0x140171cc1
call fcn.14010cc0c
jmp 0x140171cc1
mov rcx, qword [r15 + 0x28]
test rcx, rcx
jne 0x140172146
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.14010fba0
mov rcx, r15
add rsp, 0x228
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14010cc0c
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1401cab90]
cmp qword [rcx + 0x10], rdx
jne 0x140171d0c
lea rcx, [0x140200ce0]
cmp rax, rcx
je 0x140171d24
mov rcx, rsi
mov edx, 1
call qword [0x140318008]
mov r10, qword [rsp + 0x20]
jmp 0x1401719af
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x140171d37
lock dec dword [rcx]
jne 0x140171d37
call fcn.14010cc0c
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x140171d49
lock dec dword [rcx]
je 0x140172176
mov rcx, rsi
call fcn.14010cc0c
jmp 0x140171d1a
mov r13, rcx
jmp 0x140171094
cmp r9, r13
jbe 0x1401721d9
imul rcx, r13, 0xa8
add rbx, rcx
cmp rax, qword [r10 + 0x18]
jae 0x1401720ee
test rax, rax
je 0x1401721dc
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
lea rsi, [rbx + 0x20]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rbx + 0x70]
mov dword [rax + 0x70], ecx
mov cl, byte [rbx + 0x74]
mov byte [rax + 0x74], cl
mov rcx, qword [rbx + 0x78]
mov qword [rax + 0x78], rcx
mov edx, 0
mov qword [rbx + 0x78], rdx
movzx ecx, word [rbx + 0x80]
mov word [rax + 0x80], cx
mov cl, byte [rbx + 0x82]
mov byte [rax + 0x82], cl
mov rcx, qword [rbx + 0x88]
mov qword [rax + 0x88], rcx
mov qword [rbx + 0x88], rdx
mov rcx, qword [rbx + 0x90]
mov qword [rax + 0x90], rcx
mov rcx, qword [rbx + 0x98]
mov qword [rax + 0x98], rcx
mov qword [rbx + 0x98], rdx
mov rcx, qword [rbx + 0xa0]
mov qword [rax + 0xa0], rcx
add rax, 0xa8
mov qword [r10 + 0x10], rax
jmp 0x1401711c4
mov r13, r15
mov rdi, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movabs r15, 0x8000000000000001
add r15, rsi
cmp r15, 2
jb 0x140171e68
lea r15, [rdi + rsi]
sar r15, 0x3f
btc r15, 0x3f
add rdi, rsi
cmovo rdi, r15
mov rsi, rdi
mov r15, r13
jmp 0x140171062
cmp rdi, rsi
je 0x140171e60
movabs r15, 0x8000000000000001
add rdi, r15
cmp rdi, 1
mov r15, r13
ja 0x140171062
int3
mov r11, qword [r9 + 0x28]
mov r10, qword [r9 + 0x30]
movabs rsi, 0x8000000000000001
add rsi, r10
cmp rsi, 2
jae 0x140171eca
cmp r11, r10
je 0x140171049
movabs rsi, 0x8000000000000001
add r11, rsi
cmp r11, 1
ja 0x140171049
jmp 0x1401721c4
lea rsi, [r11 + r10]
sar rsi, 0x3f
btc rsi, 0x3f
add r11, r10
cmovo r11, rsi
mov r10, r11
jmp 0x140171049
cmp rax, qword [r10 + 0x18]
jae 0x140172111
test rax, rax
je 0x1401721b2
mov edx, edi
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rdi, [rax + 0x20]
lea rsi, [rbx + 0x20]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov ecx, dword [rbx + 0x70]
mov dword [rax + 0x70], ecx
mov cl, byte [rbx + 0x74]
mov byte [rax + 0x74], cl
mov rcx, qword [rbx + 0x78]
mov qword [rax + 0x78], rcx
mov r8d, 0
mov qword [rbx + 0x78], r8
movzx ecx, word [rbx + 0x80]
mov word [rax + 0x80], cx
mov cl, byte [rbx + 0x82]
mov byte [rax + 0x82], cl
mov rcx, qword [rbx + 0x88]
mov qword [rax + 0x88], rcx
mov qword [rbx + 0x88], r8
mov rcx, qword [rbx + 0x90]
mov qword [rax + 0x90], rcx
mov rcx, qword [rbx + 0x98]
mov qword [rax + 0x98], rcx
mov qword [rbx + 0x98], r8
mov rcx, qword [rbx + 0xa0]
mov qword [rax + 0xa0], rcx
add rax, 0xa8
mov edi, edx
mov qword [r10 + 0x10], rax
mov r8, qword [rsp + 0x40]
jmp 0x140171531
lock dec dword [rcx]
jne 0x1401717be
mov rax, qword [rcx + 0x10]
mov rsi, r11
call qword [0x140318008]
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x1401717be
lock dec dword [rcx]
jne 0x140171111
mov rax, qword [rcx + 0x10]
mov rsi, r11
mov rdi, r9
call qword [0x140318008]
mov r9, rdi
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x140171111
mov rcx, qword [r14]
mov rax, qword [rcx + 8]
lea rdx, [0x1401cab90]
cmp qword [rcx + 0x10], rdx
jne 0x140172019
lea rcx, [0x140200ce0]
cmp rax, rcx
je 0x14017202c
mov rcx, r14
mov edx, 1
call qword [0x140318008]
jmp 0x1401719ef
mov rcx, qword [r14 + 0x18]
test rcx, rcx
je 0x14017203f
lock dec dword [rcx]
jne 0x14017203f
call fcn.14010cc0c
mov rcx, qword [r14 + 0x10]
test rcx, rcx
je 0x14017204d
lock dec dword [rcx]
je 0x14017205a
mov rcx, r14
call fcn.14010cc0c
jmp 0x1401719ef
call fcn.1400c4aa0
jmp 0x14017204d
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1401cab90]
cmp qword [rcx + 0x10], rdx
jne 0x140172081
lea rcx, [0x140200ce0]
cmp rax, rcx
je 0x140172099
mov rcx, rsi
mov edx, 1
call qword [0x140318008]
mov r10, qword [rsp + 0x20]
jmp 0x140171950
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1401720ac
lock dec dword [rcx]
jne 0x1401720ac
call fcn.14010cc0c
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x1401720ba
lock dec dword [rcx]
je 0x1401720c4
mov rcx, rsi
call fcn.14010cc0c
jmp 0x14017208f
call fcn.1400c4aa0
jmp 0x1401720ba
lock dec dword [rcx]
jne 0x14017147a
mov rax, qword [rcx + 0x10]
mov rsi, r11
call qword [0x140318008]
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x14017147a
mov rcx, qword [rsp + 0x30]
mov rdx, rbx
mov rsi, r11
mov rdi, r9
call fcn.1400a7720
mov r9, rdi
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x140171e22
mov rcx, qword [rsp + 0x30]
mov rdx, rbx
mov rsi, r11
call fcn.1400a7720
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x140171f9f
lock dec dword [rcx]
jne 0x140171ba8
mov rax, qword [rcx + 0x10]
call qword [0x140318008]
jmp 0x140171ba8
lock dec dword [rcx]
jne 0x140171cc1
mov rax, qword [rcx + 0x10]
call qword [0x140318008]
jmp 0x140171cc1
lock dec dword [rcx]
jne 0x140171c4f
mov rax, qword [rcx + 0x10]
call qword [0x140318008]
jmp 0x140171c4f
call fcn.1400c4aa0
jmp 0x140171d49
xor r13d, r13d
jmp 0x140171666
int3
int3
int3
int3
int3
dec dword [r10 + 0x20]
jmp 0x1401719d3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
lock dec dword [rcx + 8]
jne 0x1401717fe
mov rsi, r11
call fcn.14005fb30
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x1401717fe
int3
lock dec dword [rcx + 8]
jne 0x140171160
mov rsi, r11
mov rdi, r9
call fcn.14005fb30
mov r9, rdi
mov r11, rsi
mov r10, qword [rsp + 0x20]
jmp 0x140171160
lock dec dword [rcx + 8]
jne 0x1401714c5
mov rsi, r11
call fcn.14005fb30
mov r11, rsi
mov r8, qword [rsp + 0x40]
mov r10, qword [rsp + 0x20]
jmp 0x1401714c5