Function at 0x140155d90
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov r14, r9
mov qword [rsp + 0x40], r8
mov rdi, rcx
mov rax, qword [0x1402db040]
xor rax, rsp
mov qword [rsp + 0x110], rax
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rcx + 0x10]
mov r12, qword [rcx + 0x18]
cmp r13, r12
je 0x140156197
mov rax, qword [r13]
mov qword [rsp + 0x98], rax
mov rax, qword [r13 + 8]
mov qword [rsp + 0x90], rax
mov eax, dword [r13 + 0x14]
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x7c], 0
mov rax, qword [rdx + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x140157513
mov r11, qword [rdx + 0x110]
cmp r11, 0xffffffffffffffff
je 0x140156170
mov esi, dword [rax + 8]
mov rbp, r11
test esi, esi
jne 0x14015756d
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401577e9
mov rcx, rbp
shl rcx, 5
mov eax, dword [rax + rcx + 0x10]
movzx ecx, al
mov dword [rsp + 0x74], ecx
and eax, 0xffffff00
mov dword [rsp + 0x78], eax
mov rax, qword [rdx + 0x18]
movzx ebx, byte [r14 + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x140157536
test bl, bl
je 0x1401561e4
mov al, byte [r14 + 0x18]
cmp rbp, 0xffffffffffffffff
je 0x140156275
test al, al
je 0x1401577e4
mov r10, r13
mov rax, qword [r14]
mov qword [rsp + 0x48], rax
mov r9, qword [r14 + 8]
mov r13d, dword [r14 + 0x10]
mov qword [rsp + 0x60], r14
mov r14d, dword [r14 + 0x14]
mov rax, qword [rdx + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x14015759d
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x50], r12
mov rbx, rbp
shl rbx, 5
mov rsi, qword [rax + rbx + 0x18]
mov rax, qword [rsi + 0x18]
mov r15d, dword [rax + 8]
test r15d, r15d
jne 0x1401575e0
mov qword [rsi + 0x110], 0xffffffffffffffff
mov r12, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov r15, rsi
sub r15, r12
sar r15, 5
cmp rbp, r15
jae 0x1401576e7
mov r8, r11
movabs r11, 0x8000000000000001
lea rax, [r12 + rbx]
cmp dword [r12 + rbx + 0x14], 0
jne 0x14015618c
mov rcx, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + r11]
cmp rdx, 2
mov rbx, r11
jb 0x140157871
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov rax, rcx
mov r11, r8
mov rcx, qword [rsp + 0x48]
mov r8d, r14d
test r14d, r14d
mov r14d, r13d
mov r13, r10
jne 0x140155faf
lea rcx, [r9 + rbx]
cmp rcx, 2
jb 0x140157890
mov rcx, qword [rsp + 0x48]
lea rdx, [rcx + r9]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, r9
cmovo rcx, rdx
cmp rcx, rax
jle 0x140156843
lea rcx, [rbp*2 + 1]
cmp rcx, r15
jae 0x140156360
lea rdx, [rbp*2]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x20], r11
mov dword [rsp + 0x2c], r14d
add rdx, 2
mov r12, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov rax, rsi
sub rax, r12
mov r10, rax
sar r10, 5
cmp rdx, r15
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x30], r10
jae 0x1401561cc
cmp rdx, r10
jae 0x1401576e7
mov r14d, r8d
mov r10, rdx
shl r10, 5
lea r8, [r12 + r10]
cmp dword [r12 + r10 + 0x14], 0
jne 0x1401561d4
mov r11, qword [r8]
mov r8, qword [r8 + 8]
lea r10, [r8 + rbx]
cmp r10, 2
jb 0x1401578d2
lea r10, [r11 + r8]
sar r10, 0x3f
btc r10, 0x3f
add r11, r8
cmovo r11, r10
mov r8, r11
mov r11, rcx
shl r11, 5
add r11, r12
cmp dword [r11 + 0x14], 0
jne 0x1401561dc
mov r10, qword [r11]
mov rbx, qword [r11 + 8]
movabs r11, 0x8000000000000001
add r11, rbx
cmp r11, 2
jb 0x140157907
lea r11, [r10 + rbx]
sar r11, 0x3f
btc r11, 0x3f
add r10, rbx
cmovo r10, r11
mov rbx, r10
cmp rbx, r8
mov r11, qword [rsp + 0x20]
mov r8d, r14d
jg 0x1401560b8
mov rdx, rcx
mov r10, rdx
mov r13, qword [rsp + 0x38]
cmp r10, qword [rsp + 0x30]
jae 0x1401576e7
mov rbx, r13
mov r14d, r8d
mov rcx, r10
shl rcx, 5
lea r13, [r12 + rcx]
cmp dword [r12 + rcx + 0x14], 0
jne 0x1401561c3
mov rdx, qword [r13]
mov rcx, qword [r13 + 8]
movabs rax, 0x8000000000000001
lea r8, [rcx + rax]
cmp r8, 2
jb 0x1401578b4
lea r8, [rdx + rcx]
sar r8, 0x3f
btc r8, 0x3f
add rdx, rcx
cmovo rdx, r8
mov rcx, rdx
mov rax, qword [rsp + 0x48]
lea r8, [rax + r9]
sar r8, 0x3f
btc r8, 0x3f
mov rdx, rax
add rdx, r9
cmovo rdx, r8
test r14d, r14d
cmovne rdx, rax
jne 0x14015633b
movabs rax, 0x8000000000000001
lea r8, [rax + r9]
add r8, 0xfffffffffffffffe
cmp r8, 0xfffffffffffffffe
mov r8d, r14d
mov eax, dword [rsp + 0x2c]
jb 0x140156342
jmp 0x140157959
mov dword [rsp + 0x78], 0xaaaaaa00
mov dword [rsp + 0x74], 0
mov rbp, 0xffffffffffffffff
jmp 0x140155e68
mov rax, qword [rax]
mov rbx, r11
jmp 0x140155f72
lea rax, [r15 - 0xaa]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0x7c], 0xaaaaaaaa
mov qword [rsp + 0x90], r15
mov dword [rsp + 0x70], 0xaaaaaaaa
jmp 0x140155e03
mov rcx, qword [r13]
jmp 0x14015611f
mov r10, rcx
jmp 0x1401560c0
mov r8, qword [r8]
jmp 0x14015605e
mov rbx, qword [r11]
jmp 0x1401560a8
cmp rbp, 0xffffffffffffffff
je 0x140156414
mov rax, qword [rdx + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x140157660
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov rcx, rbp
shl rcx, 5
mov rsi, qword [rax + rcx + 0x18]
mov rax, qword [rsi + 0x18]
mov ebx, dword [rax + 8]
test ebx, ebx
jne 0x1401576aa
mov qword [rsi + 0x110], 0xffffffffffffffff
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
mov rdx, rax
sub rdx, rcx
sar rdx, 5
dec rdx
cmp rbp, rdx
jne 0x140156b16
cmp rcx, rax
je 0x1401576e7
add rax, 0xffffffffffffffe0
je 0x1401576e7
mov qword [rdi + 0x18], rax
jmp 0x140156414
test al, al
je 0x1401577e4
mov rbx, r11
lea rcx, [rdi + 8]
mov rax, qword [r14 + 0x10]
lea r8, [rsp + 0xe0]
mov qword [r8 + 0x10], rax
movups xmm0, xmmword [r14]
movaps xmmword [r8], xmm0
mov qword [r8 + 0x18], rdx
mov rdx, qword [rdi + 0x18]
sub rdx, qword [rdi + 0x10]
sar rdx, 5
call fcn.140157bc0
mov r11, rbx
jmp 0x140156414
mov rax, qword [rdi + 0x20]
cmp rsi, rax
jae 0x140156dcc
test rsi, rsi
movabs r15, 0xaaaaaaaaaaaaaaaa
je 0x1401576e7
mov rax, qword [rsp + 0x48]
mov qword [rsi], rax
mov qword [rsi + 8], r9
mov dword [rsi + 0x10], r14d
mov dword [rsi + 0x14], r8d
mov rax, qword [rsp + 0x68]
mov qword [rsi + 0x18], rax
add rsi, 0x20
mov r12, qword [rsp + 0x50]
mov qword [rdi + 0x18], rsi
jmp 0x1401563ab
lea r8, [r15 - 0xaa]
mov edx, 0xaaaaaaaa
mov r10d, 0xaaaaaaaa
mov rsi, r15
cmp r11, 0xffffffffffffffff
jne 0x140156438
jmp 0x14015644c
mov byte [rsp + 0xa0], 0
xor ecx, ecx
jmp 0x1401564c4
mov r8d, r14d
mov eax, dword [rsp + 0x2c]
cmp rdx, rcx
jg 0x1401566f3
mov r15, qword [rsp + 0x30]
mov r13, rbx
movabs rbx, 0x8000000000000001
mov r14d, eax
cmp rbp, r15
je 0x1401562b9
jae 0x1401576e7
mov rax, rbp
shl rax, 5
mov rcx, qword [rsp + 0x48]
mov qword [r12 + rax], rcx
mov qword [r12 + rax + 8], r9
mov dword [r12 + rax + 0x10], r14d
mov dword [r12 + rax + 0x14], r8d
mov rcx, qword [rsp + 0x68]
mov qword [r12 + rax + 0x18], rcx
mov rsi, qword [rdi + 0x18]
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r12, qword [rsp + 0x50]
mov rax, qword [rdi + 0x10]
sub rsi, rax
sar rsi, 5
cmp rbp, rsi
jae 0x1401576e7
mov rsi, rbp
shl rsi, 5
mov rbx, qword [rax + rsi + 0x18]
mov rax, qword [rbx + 0x18]
mov r14d, dword [rax + 8]
test r14d, r14d
jne 0x14015760c
mov qword [rbx + 0x110], rbp
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov rax, qword [rax + rsi + 0x18]
mov rax, qword [rax + 0x18]
mov esi, dword [rax + 8]
test esi, esi
mov r14, qword [rsp + 0x60]
jne 0x140157628
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
cmp rax, rcx
je 0x140156308
mov r8, qword [rax]
mov rsi, qword [rax + 8]
mov edx, dword [rax + 0x14]
xor r10d, r10d
cmp r11, 0xffffffffffffffff
je 0x14015644c
mov r11d, dword [rsp + 0x78]
or r11d, dword [rsp + 0x74]
cmp r11d, 1
je 0x140157800
cmp byte [r14 + 0x18], 1
jne 0x14015645e
cmp dword [r14 + 0x10], 1
je 0x1401577f8
cmp rax, rcx
sete r11b
cmp r13, r12
sete bl
or bl, r11b
jne 0x140156679
cmp r10d, dword [rsp + 0x7c]
jne 0x140156499
cmp r8, qword [rsp + 0x98]
jne 0x140156499
cmp rsi, qword [rsp + 0x90]
jne 0x140156499
cmp edx, dword [rsp + 0x70]
je 0x14015664a
cmp rax, rcx
je 0x14015632c
movups xmm0, xmmword [rax]
mov eax, dword [rax + 0x14]
movups xmmword [rsp + 0xa0], xmm0
mov dword [rsp + 0xb0], 0
mov dword [rsp + 0xb4], eax
mov cl, 1
mov byte [rsp + 0xb8], cl
mov rax, qword [rdi]
mov rax, qword [rax + 0x10]
lea rdx, [0x14016cde0]
cmp rax, rdx
jne 0x140156691
mov rbx, qword [rdi + 0x38]
lea r13, [r15 - 0xaa]
mov r8d, 0xaaaaaaaa
test cl, cl
mov rdx, qword [rsp + 0x40]
je 0x140156664
mov r14, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
mov ebp, dword [rsp + 0xb0]
mov r12d, dword [rsp + 0xb4]
mov rsi, r14
cmp r12d, 1
je 0x14015781c
mov al, byte [rdx + 8]
test al, al
jne 0x1401565c4
mov rax, qword [fcn.1401a83e0]
lea rcx, [0x1401930c0]
cmp rax, rcx
jne 0x1401566ca
lea rdi, [rsp + 0xe0]
mov qword [rdi], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rdi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401579c1
imul rax, rax, 0xf4240
cqo
idiv qword [0x14032e5f0]
mov qword [rsp + 0xe0], rax
mov rdx, qword [rsp + 0x40]
mov al, byte [rdx + 8]
cmp al, 1
je 0x1401578f1
test rdx, rdx
mov r8d, 0xaaaaaaaa
je 0x1401576e7
mov rax, qword [rsp + 0xe0]
mov qword [rdx], rax
mov byte [rdx + 8], 1
mov al, 1
test al, al
je 0x1401576e7
cmp qword [rdx], rsi
jge 0x1401566dd
cmp qword [rbx + 0x250], 0
jne 0x140157808
mov al, 1
test r14, r14
je 0x1401566dd
mov rdi, qword [rbx + 0x30]
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xc8], r15
mov dword [rsp + 0xd0], ebp
mov dword [rsp + 0xd4], r12d
mov byte [rsp + 0xd8], al
mov dword [rsp + 0xd9], r8d
mov dword [rsp + 0xdc], r8d
mov rax, qword [rdi]
mov rax, qword [rax + 0x20]
lea rcx, [0x1401a8e60]
cmp rax, rcx
jne 0x1401566a9
mov eax, dword [rdi + 0x1b0]
cmp eax, 4
je 0x1401573d1
mov rcx, qword [rsp + 0x110]
xor rcx, rsp
cmp rcx, qword [0x1402db040]
je 0x1401566b6
call fcn.1401ac870
int3
xor eax, eax
mov r14, r13
mov ebp, 0xaaaaaaaa
mov r12d, 0xaaaaaaaa
jmp 0x1401565ee
cmp rax, rcx
setne dl
cmp r13, r12
setne r8b
cmp r8b, dl
jne 0x140156499
jmp 0x14015664a
lea r8, [rsp + 0xa0]
mov rcx, rdi
mov rdx, qword [rsp + 0x40]
call qword [0x1402cbd20]
jmp 0x14015664a
lea r8, [rsp + 0xc0]
mov rcx, rdi
jmp 0x1401566a1
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0xe0]
call qword [0x1402cbd20]
jmp 0x140156594
mov rcx, qword [rbx + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x1402cbd20]
jmp 0x14015664a
cmp rbp, qword [rsp + 0x30]
mov r14d, eax
je 0x1401567ca
jae 0x1401576e7
mov rax, rbp
shl rax, 5
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [r12 + rax + 0x10], xmm1
movups xmmword [r12 + rax], xmm0
mov rsi, qword [rdi + 0x18]
mov r13, rbx
mov rax, qword [rdi + 0x10]
sub rsi, rax
sar rsi, 5
cmp rbp, rsi
jae 0x1401576e7
mov rsi, rbp
shl rsi, 5
mov rbx, qword [rax + rsi + 0x18]
mov rax, qword [rbx + 0x18]
mov r12d, dword [rax + 8]
test r12d, r12d
jne 0x140157726
mov qword [rbx + 0x110], rbp
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov rax, qword [rax + rsi + 0x18]
mov rax, qword [rax + 0x18]
mov esi, dword [rax + 8]
test esi, esi
movabs rbx, 0x8000000000000001
jne 0x14015775f
lea rdx, [r10 + r10]
lea rcx, [r10*2 + 1]
mov rbp, r10
cmp rcx, r15
jb 0x140155fe0
mov r12, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov r15, rsi
sub r15, r12
sar r15, 5
mov rbp, r10
jmp 0x140156360
mov rax, qword [rdi + 0x20]
cmp rsi, rax
jae 0x140156fc5
test rsi, rsi
je 0x1401576e7
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
add rsi, 0x20
mov r13, rbx
mov qword [rdi + 0x18], rsi
jmp 0x14015672a
mov rax, qword [rdi + 0x20]
cmp rsi, rax
jae 0x1401570ab
test rsi, rsi
je 0x1401576e7
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
add rsi, 0x20
mov r13, qword [rsp + 0x38]
mov qword [rdi + 0x18], rsi
jmp 0x14015695d
mov rcx, qword [r13]
jmp 0x140156918
test rbp, rbp
je 0x1401569f6
lea rax, [rbx + r9]
add rax, 0xfffffffffffffffe
mov qword [rsp + 0x80], rax
lea rbx, [rbp - 1]
mov qword [rsp + 0x88], rbx
shr rbx, 1
mov r12, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov r15, rsi
sub r15, r12
sar r15, 5
cmp rbx, r15
jae 0x1401576e7
mov rdx, qword [rsp + 0x48]
lea rcx, [rdx + r9]
sar rcx, 0x3f
btc rcx, 0x3f
mov rax, rdx
mov qword [rsp + 0x30], r9
add rax, r9
cmovo rax, rcx
test r8d, r8d
cmovne rax, rdx
mov qword [rsp + 0x38], r13
mov r10d, r14d
jne 0x1401568c7
cmp qword [rsp + 0x80], 0xfffffffffffffffe
jae 0x14015798f
mov r13, rbx
shl r13, 5
add r13, r12
cmp dword [r13 + 0x14], 0
jne 0x14015683a
mov r14d, r8d
mov rdx, qword [r13]
mov rcx, qword [r13 + 8]
movabs r8, 0x8000000000000001
add r8, rcx
cmp r8, 2
jb 0x14015792f
lea r8, [rdx + rcx]
sar r8, 0x3f
btc r8, 0x3f
add rdx, rcx
cmovo rdx, r8
mov rcx, rdx
mov r8d, r14d
cmp rcx, rax
mov r14d, r10d
jle 0x1401569e7
cmp rbp, r15
mov r9, qword [rsp + 0x30]
je 0x140156801
jae 0x1401576e7
mov rax, rbp
shl rax, 5
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [r12 + rax + 0x10], xmm1
movups xmmword [r12 + rax], xmm0
mov rsi, qword [rdi + 0x18]
mov r13, qword [rsp + 0x38]
mov rax, qword [rdi + 0x10]
sub rsi, rax
sar rsi, 5
cmp rbp, rsi
jae 0x1401576e7
mov rsi, rbp
shl rsi, 5
mov r15, qword [rax + rsi + 0x18]
mov rax, qword [r15 + 0x18]
mov r12d, dword [rax + 8]
test r12d, r12d
jne 0x14015779b
mov qword [r15 + 0x110], rbp
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov rax, qword [rax + rsi + 0x18]
mov rax, qword [rax + 0x18]
mov esi, dword [rax + 8]
test esi, esi
jne 0x140157700
mov rbp, rbx
cmp qword [rsp + 0x88], 1
ja 0x14015685c
mov r12, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov r15, rsi
sub r15, r12
sar r15, 5
jmp 0x1401569f8
mov rbx, rbp
mov r13, qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
jmp 0x1401569f8
xor ebx, ebx
cmp rbx, r15
je 0x140156aaf
movabs r15, 0xaaaaaaaaaaaaaaaa
jae 0x1401576e7
mov rax, rbx
shl rax, 5
mov rcx, qword [rsp + 0x48]
mov qword [r12 + rax], rcx
mov qword [r12 + rax + 8], r9
mov dword [r12 + rax + 0x10], r14d
mov dword [r12 + rax + 0x14], r8d
mov rcx, qword [rsp + 0x68]
mov qword [r12 + rax + 0x18], rcx
mov rsi, qword [rdi + 0x18]
mov r12, qword [rsp + 0x50]
mov rax, qword [rdi + 0x10]
sub rsi, rax
sar rsi, 5
cmp rbx, rsi
jae 0x1401576e7
mov rsi, rbx
shl rsi, 5
mov r14, qword [rax + rsi + 0x18]
mov rax, qword [r14 + 0x18]
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x140157645
mov qword [r14 + 0x110], rbx
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbx, rcx
jae 0x1401576e7
mov rax, qword [rax + rsi + 0x18]
mov rax, qword [rax + 0x18]
mov esi, dword [rax + 8]
test esi, esi
mov r14, qword [rsp + 0x60]
je 0x140156414
jmp 0x14015768d
mov rax, qword [rdi + 0x20]
cmp rsi, rax
movabs r15, 0xaaaaaaaaaaaaaaaa
jae 0x140156ebc
test rsi, rsi
je 0x1401576e7
mov rax, qword [rsp + 0x48]
mov qword [rsi], rax
mov qword [rsi + 8], r9
mov dword [rsi + 0x10], r14d
mov dword [rsi + 0x14], r8d
mov rax, qword [rsp + 0x68]
mov qword [rsi + 0x18], rax
add rsi, 0x20
mov r12, qword [rsp + 0x50]
mov qword [rdi + 0x18], rsi
jmp 0x140156a43
mov r8, qword [r8]
jmp 0x140156c17
mov r9, qword [r9]
jmp 0x140156c5d
mov r15, rax
jmp 0x140156c68
cmp rax, rcx
je 0x1401576e7
shl rdx, 5
mov rsi, qword [rcx + rdx + 0x18]
mov rax, qword [rsi + 0x18]
mov ebx, dword [rax + 8]
test ebx, ebx
jne 0x1401577cd
mov qword [rsi + 0x110], 0xffffffffffffffff
mov rax, qword [rdi + 0x18]
mov rsi, rax
sub rsi, qword [rdi + 0x10]
je 0x1401576e7
movups xmm0, xmmword [rax - 0x20]
movups xmm1, xmmword [rax - 0x10]
movaps xmmword [rsp + 0xd0], xmm1
movaps xmmword [rsp + 0xc0], xmm0
sar rsi, 5
dec rsi
lea rax, [rbp*2 + 1]
cmp rax, rsi
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x20], r11
jae 0x14015750b
lea rcx, [rbp*2]
movabs r11, 0x8000000000000001
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x50], r12
add rcx, 2
mov r14, qword [rdi + 0x10]
mov r12, qword [rdi + 0x18]
mov r13, r12
sub r13, r14
mov rdx, r13
sar rdx, 5
cmp rcx, rsi
jae 0x140156b0e
cmp rcx, rdx
jae 0x1401576e7
mov r9, rcx
shl r9, 5
lea r8, [r14 + r9]
cmp dword [r14 + r9 + 0x14], 0
jne 0x140156afe
mov r9, qword [r8]
mov r8, qword [r8 + 8]
lea r10, [r8 + r11]
cmp r10, 2
jb 0x1401579e8
lea r10, [r9 + r8]
sar r10, 0x3f
btc r10, 0x3f
add r9, r8
cmovo r9, r10
mov r8, r9
mov r9, rax
shl r9, 5
add r9, r14
cmp dword [r9 + 0x14], 0
jne 0x140156b06
mov r10, qword [r9]
mov r9, qword [r9 + 8]
mov rbx, r11
add r11, r9
cmp r11, 2
jb 0x140157a07
lea r11, [r10 + r9]
sar r11, 0x3f
btc r11, 0x3f
add r10, r9
cmovo r10, r11
mov r9, r10
mov r11, rbx
cmp r9, r8
jg 0x140156c65
mov rcx, rax
mov r15, rcx
cmp rbp, rdx
je 0x140156d7f
cmp r15, rdx
jae 0x1401576e7
cmp rbp, rdx
mov r13, qword [rsp + 0x38]
jae 0x1401576e7
mov rax, r15
shl rax, 5
mov rcx, rbp
shl rcx, 5
movups xmm0, xmmword [r14 + rax]
movups xmm1, xmmword [r14 + rax + 0x10]
movups xmmword [r14 + rcx + 0x10], xmm1
movups xmmword [r14 + rcx], xmm0
mov r12, qword [rdi + 0x18]
mov rax, qword [rdi + 0x10]
sub r12, rax
sar r12, 5
cmp rbp, r12
jae 0x1401576e7
mov rbx, rbp
shl rbx, 5
mov r14, qword [rax + rbx + 0x18]
mov rax, qword [r14 + 0x18]
mov r12d, dword [rax + 8]
test r12d, r12d
jne 0x1401576cb
mov qword [r14 + 0x110], rbp
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, rax
sar rcx, 5
cmp rbp, rcx
jae 0x1401576e7
mov rax, qword [rax + rbx + 0x18]
mov rax, qword [rax + 0x18]
mov ebx, dword [rax + 8]
test ebx, ebx
mov r12, qword [rsp + 0x50]
jne 0x1401576e9
lea rcx, [r15 + r15]
lea rax, [r15*2 + 1]
mov rbp, r15
cmp rax, rsi
jb 0x140156ba9
lea rcx, [rdi + 8]
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
lea r8, [rsp + 0xe0]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
mov rdx, r15
call fcn.140157bc0
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x20]
jmp 0x140156259
cmp r15, rbp
jae 0x1401576e7
mov rbx, r15
shl rbx, 5
add rbx, r14
mov rax, qword [rdi + 0x20]
cmp r12, rax
jae 0x140157199
test r12, r12
je 0x1401576e7
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
add r12, 0x20
mov r13, qword [rsp + 0x38]
mov qword [rdi + 0x18], r12
jmp 0x140156cb0
mov qword [rsp + 0x38], r13
lea rdx, [r15 + 1]
mov rcx, rdx
shr rcx, 0x3b
jne 0x1401577ee
movabs rcx, 0x7ffffffffffffff
sub rax, r12
add rbx, 0xffffffffffffffdf
mov rsi, rax
sar rsi, 4
cmp rsi, rdx
cmovbe rsi, rdx
cmp rax, rbx
cmovae rsi, rcx
test rsi, rsi
mov qword [rsp + 0x20], r11
je 0x140157a29
cmp rsi, rcx
ja 0x1401577f3
mov r13, r9
mov ebx, r14d
mov r14d, r8d
mov rcx, rsi
shl rcx, 5
call fcn.1401a9d88
mov r12, rax
shl r15, 5
add r15, r12
je 0x1401576e7
shl rsi, 5
add r12, rsi
mov rax, qword [rsp + 0x48]
mov qword [r15], rax
mov qword [r15 + 8], r13
mov dword [r15 + 0x10], ebx
mov dword [r15 + 0x14], r14d
mov rax, qword [rsp + 0x68]
mov qword [r15 + 0x18], rax
lea rsi, [r15 + 0x20]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rdi + 0x18]
sub r8, rdx
sub r15, r8
mov rcx, r15
call fcn.1401e56b0
mov rcx, qword [rdi + 0x10]
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], r12
test rcx, rcx
jne 0x140156eb5
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r12, qword [rsp + 0x50]
mov r11, qword [rsp + 0x20]
mov r13, qword [rsp + 0x38]
jmp 0x1401562ff
call fcn.1401a9dc4
jmp 0x140156e97
mov qword [rsp + 0x38], r13
lea rdx, [rbx + 1]
mov rcx, rdx
shr rcx, 0x3b
jne 0x1401577ee
mov r15d, r8d
mov r8, r11
movabs rcx, 0x7ffffffffffffff
sub rax, r12
movabs r11, 0x8000000000000001
add r11, 0xffffffffffffffdf
mov rsi, rax
sar rsi, 4
cmp rsi, rdx
cmovbe rsi, rdx
cmp rax, r11
cmovae rsi, rcx
test rsi, rsi
mov qword [rsp + 0x20], r8
je 0x140157a3a
cmp rsi, rcx
ja 0x1401577f3
mov r13, r9
mov ebp, r14d
mov r14d, r15d
mov rcx, rsi
shl rcx, 5
call fcn.1401a9d88
mov r15, rax
mov r12, rbx
shl r12, 5
add r12, r15
je 0x1401576e7
shl rsi, 5
add r15, rsi
mov rax, qword [rsp + 0x48]
mov qword [r12], rax
mov qword [r12 + 8], r13
mov dword [r12 + 0x10], ebp
mov dword [r12 + 0x14], r14d
mov rax, qword [rsp + 0x68]
mov qword [r12 + 0x18], rax
lea rsi, [r12 + 0x20]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rdi + 0x18]
sub r8, rdx
sub r12, r8
mov rcx, r12
call fcn.1401e56b0
mov rcx, qword [rdi + 0x10]
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], r15
test rcx, rcx
jne 0x140156fbe
movabs r15, 0xaaaaaaaaaaaaaaaa
mov r12, qword [rsp + 0x50]
mov r11, qword [rsp + 0x20]
mov r13, qword [rsp + 0x38]
jmp 0x140156af5
call fcn.1401a9dc4
jmp 0x140156fa0
movabs rsi, 0x7ffffffffffffff
lea rdx, [rsi - 1]
cmp rbp, rdx
ja 0x1401577ee
lea rdx, [rbp + 1]
sub rax, r12
mov rcx, rax
sar rcx, 4
cmp rcx, rdx
ja 0x140156ff2
mov rcx, rdx
mov qword [rsp + 0x80], r10
mov qword [rsp + 0x30], r9
mov dword [rsp + 0x5c], r8d
movabs rdx, 0x8000000000000001
add rdx, 0xffffffffffffffdf
cmp rax, rdx
cmovae rcx, rsi
cmp rcx, rsi
ja 0x1401577f3
shl rcx, 5
mov r14, rcx
call fcn.1401a9d88
mov rsi, rbp
shl rsi, 5
add rsi, rax
je 0x1401576e7
add r14, rax
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
add rsi, 0x20
mov rcx, rax
mov rdx, r12
mov r8, qword [rsp + 0x88]
mov r13, rax
call fcn.1401e56b0
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], r14
test r12, r12
jne 0x1401570a1
mov r13, rbx
mov r11, qword [rsp + 0x20]
mov r8d, dword [rsp + 0x5c]
mov r14d, dword [rsp + 0x2c]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x80]
jmp 0x1401567f8
mov rcx, r12
call fcn.1401a9dc4
jmp 0x14015707d
mov dword [rsp + 0x2c], r14d
lea rdx, [rbp + 1]
mov rcx, rdx
shr rcx, 0x3b
jne 0x1401577ee
mov r14d, r8d
movabs rcx, 0x7ffffffffffffff
sub rax, r12
movabs r8, 0x8000000000000001
add r8, 0xffffffffffffffdf
mov rsi, rax
sar rsi, 4
cmp rsi, rdx
cmovbe rsi, rdx
cmp rax, r8
cmovae rsi, rcx
test rsi, rsi
mov qword [rsp + 0x20], r11
je 0x140157a4b
cmp rsi, rcx
ja 0x1401577f3
mov rcx, rsi
shl rcx, 5
call fcn.1401a9d88
mov r15, rax
mov r12, rbp
shl r12, 5
add r12, r15
je 0x1401576e7
shl rsi, 5
add r15, rsi
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
lea rsi, [r12 + 0x20]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rdi + 0x18]
sub r8, rdx
sub r12, r8
mov rcx, r12
call fcn.1401e56b0
mov rcx, qword [rdi + 0x10]
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], r15
test rcx, rcx
jne 0x140157192
mov r13, qword [rsp + 0x38]
mov r11, qword [rsp + 0x20]
mov r8d, r14d
mov r14d, dword [rsp + 0x2c]
mov r9, qword [rsp + 0x30]
jmp 0x140156831
call fcn.1401a9dc4
jmp 0x140157176
movabs r8, 0x7ffffffffffffff
lea rdx, [r8 - 1]
cmp rbp, rdx
ja 0x1401577ee
lea rdx, [rbp + 1]
sub rax, r14
mov rcx, rax
sar rcx, 4
cmp rcx, rdx
ja 0x1401571c6
mov rcx, rdx
lea rdx, [r11 - 0x21]
cmp rax, rdx
cmovae rcx, r8
cmp rcx, r8
ja 0x1401577f3
shl rcx, 5
mov qword [rsp + 0x48], rcx
call fcn.1401a9d88
mov r12, rbp
shl r12, 5
add r12, rax
je 0x1401576e7
add qword [rsp + 0x48], rax
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
add r12, 0x20
mov rcx, rax
mov rdx, r14
mov r8, r13
mov rbx, rax
call fcn.1401e56b0
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], r12
mov rax, qword [rsp + 0x48]
mov qword [rdi + 0x20], rax
test r14, r14
jne 0x14015724e
mov r13, qword [rsp + 0x38]
movabs r11, 0x8000000000000001
jmp 0x140156dc3
mov rcx, r14
call fcn.1401a9dc4
jmp 0x14015723a
mov rcx, qword [rsp + 0xc0]
cmp ebp, 1
je 0x140157b4d
mov r15, rcx
jmp 0x1401572b7
lea rcx, [rsp + 0xe0]
call qword [0x1402cbd20]
jmp 0x140157360
test ebp, ebp
jne 0x140157258
mov rcx, qword [rsp + 0xc0]
mov r15, qword [rsp + 0xc8]
lea rax, [r15 + rsi]
cmp rax, 2
jb 0x140157b07
lea rax, [rcx + r15]
sar rax, 0x3f
btc rax, 0x3f
add r15, rcx
cmovo r15, rax
mov r14, rcx
mov qword [rsp + 0xe0], r14
mov rax, qword [0x1402dd7b8]
shr rax, 1
mov edx, 0x3e8
mul rdx
jo 0x140157a96
cmp rax, 0x3e81
jae 0x140157a96
add rsi, 0xfffffffffffffffe
cmp r14, rsi
je 0x140157a68
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 8]
test al, al
jne 0x140157392
mov rax, qword [fcn.1401a83e0]
lea rcx, [0x1401930c0]
cmp rax, rcx
jne 0x14015726e
lea rbx, [rsp + 0xe0]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140157b26
imul rax, rax, 0xf4240
cqo
idiv qword [0x14032e5f0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 8]
cmp al, 1
je 0x140157af2
cmp qword [rsp + 0x40], 0
je 0x1401576e7
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rax
mov byte [rcx + 8], 1
mov al, 1
test al, al
je 0x1401576e7
movabs rax, 0x141dd76000
mov rcx, qword [rsp + 0x40]
add rax, qword [rcx]
movabs rsi, 0x7fffffffffffffff
cmovno rsi, rax
cmp rsi, r14
cmovge rsi, r14
mov ebp, dword [rsp + 0xd4]
mov al, byte [rsp + 0xd8]
jmp 0x1401573f6
movabs rsi, 0x8000000000000001
mov ebp, dword [rsp + 0xd4]
cmp byte [rsp + 0xd8], 1
je 0x140157281
add rsi, 0xfffffffffffffffe
xor eax, eax
mov rdi, qword [rdi + 0x230]
mov qword [rsp + 0xe0], rsi
xor ecx, ecx
mov edx, 0
cmp ebp, 2
je 0x140157419
mov rdx, qword [rsp + 0xc8]
test al, 1
cmovne rcx, rdx
mov qword [rsp + 0xe8], rcx
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 8]
test al, al
jne 0x1401574c6
mov rax, qword [fcn.1401a83e0]
lea rcx, [0x1401930c0]
cmp rax, rcx
jne 0x1401574fb
lea rbx, [rsp + 0x108]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140157a6f
imul rax, rax, 0xf4240
cqo
idiv qword [0x14032e5f0]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 8]
cmp al, 1
je 0x140157a53
cmp qword [rsp + 0x40], 0
je 0x1401576e7
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rax
mov byte [rcx + 8], 1
mov al, 1
test al, al
je 0x1401576e7
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
lea rdx, [rsp + 0xe0]
mov qword [rdx + 0x10], rax
mov byte [rdx + 0x18], 0
mov rax, qword [rdi]
mov rax, qword [rax + 0x20]
mov rcx, rdi
call qword [0x1402cbd20]
jmp 0x14015664a
lea rcx, [rsp + 0x108]
call qword [0x1402cbd20]
jmp 0x140157494
mov r15, rbp
jmp 0x140156d31
mov rbx, r14
mov r14, rdx
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140157ba0
mov rdx, r14
mov rax, qword [r14 + 0x18]
mov r14, rbx
jmp 0x140155e12
mov rax, r14
mov r14, rdx
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x60], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140157ba3
mov rdx, r14
mov rbp, qword [r14 + 0x110]
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x20]
jmp 0x140155e78
mov rbx, r14
mov r14, rdx
mov qword [rsp + 0x20], r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140157ba6
mov rdx, r14
mov rbp, qword [r14 + 0x110]
mov r14, rbx
mov r11, qword [rsp + 0x20]
jmp 0x140155e31
mov qword [rsp + 0x30], r9
mov dword [rsp + 0x2c], r13d
mov rbp, rdx
mov r15, r11
mov r13, r10
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140157ba9
mov rax, rbp
mov rbp, qword [rbp + 0x110]
mov r10, r13
mov r11, r15
mov rdx, rax
mov r13d, dword [rsp + 0x2c]
mov r9, qword [rsp + 0x30]
jmp 0x140155ec1
mov r12, r11
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x30], r9
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
mov r11, r12
cmp r15d, eax
je 0x140155f00
int3
mov qword [rsp + 0x20], r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, qword [rsp + 0x20]
cmp r14d, eax
je 0x1401563dc
int3
mov rbx, r14
mov r14, r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, r14
mov r14, rbx
cmp esi, eax
je 0x140156414
int3
mov qword [rsp + 0x20], r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, qword [rsp + 0x20]
cmp ebp, eax
je 0x140156a72
int3
mov rbx, r14
mov r14, rdx
mov qword [rsp + 0x20], r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x140157bac
mov rbp, qword [r14 + 0x110]
mov r14, rbx
mov r11, qword [rsp + 0x20]
jmp 0x1401561fd
mov rbx, r14
mov r14, r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, r14
mov r14, rbx
cmp esi, eax
je 0x140156414
int3
mov qword [rsp + 0x60], r14
mov r14, r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, r14
mov r14, qword [rsp + 0x60]
cmp ebx, eax
je 0x140156230
int3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
movabs r11, 0x8000000000000001
cmp r12d, eax
je 0x140156ce1
int3
ud2
mov r14, r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, r14
cmp ebx, eax
je 0x140156d19
int3
mov r12, r11
mov dword [rsp + 0x5c], r8d
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r9, qword [rsp + 0x30]
mov r8d, dword [rsp + 0x5c]
mov r11, r12
cmp esi, eax
je 0x1401569c1
int3
mov r14d, r8d
mov qword [rsp + 0x30], r9
mov r13, r10
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, r13
mov r9, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x2c]
mov r8d, r14d
mov r14d, ecx
mov r13, qword [rsp + 0x38]
mov r11, qword [rsp + 0x20]
cmp r12d, eax
je 0x14015675b
int3
mov r12, r11
mov ebp, r8d
mov qword [rsp + 0x30], r9
mov rbx, r10
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r10, rbx
mov r9, qword [rsp + 0x30]
mov r14d, dword [rsp + 0x2c]
mov r8d, ebp
mov r11, r12
movabs rbx, 0x8000000000000001
cmp esi, eax
je 0x140156798
int3
mov qword [rsp + 0x20], r11
mov r13d, r14d
mov r14d, r8d
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r9, qword [rsp + 0x30]
mov r8d, r14d
mov r14d, r13d
mov r13, qword [rsp + 0x38]
mov r11, qword [rsp + 0x20]
cmp r12d, eax
je 0x14015698e
int3
mov r15, r11
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov r11, r15
cmp ebx, eax
je 0x140156b37
int3
call fcn.1401e6180
call fcn.14023cd00
call fcn.1401e9f80
call fcn.1401e9820
inc dword [rdi + 0x28]
jmp 0x14015645e
dec dword [rdi + 0x28]
jmp 0x14015644c
xor eax, eax
mov r14, r13
movabs r15, 0xaaaaaaaaaaaaaaaa
jmp 0x140156669
movabs rsi, 0x8000000000000001
lea rax, [r15 + rsi]
cmp rax, 2
jb 0x140157851
xor eax, eax
cmp r14, r15
setns al
movabs rcx, 0x7fffffffffffffff
add rcx, rax
mov rsi, r14
sub rsi, r15
cmovo rsi, rcx
jmp 0x140157867
cmp r14, r15
je 0x140157baf
mov rax, r15
shr rax, 0x3f
not rax
add rsi, rax
mov rdx, qword [rsp + 0x40]
jmp 0x14015652c
lea rdx, [rcx + rbx]
cmp rdx, 2
setae dl
cmp rcx, rax
sete cl
or cl, dl
mov r11, r8
jne 0x140155f75
int3
mov rdx, qword [rsp + 0x48]
lea rcx, [rdx + rbx]
cmp rcx, 2
setae cl
cmp rdx, r9
sete dl
or dl, cl
mov rcx, r9
jne 0x140155faf
int3
lea r8, [rdx + rax]
cmp r8, 2
setae r8b
cmp rdx, rcx
sete dl
or dl, r8b
jne 0x14015611f
int3
lea r10, [r11 + rbx]
cmp r10, 2
setae r10b
cmp r11, r8
sete r11b
or r11b, r10b
jne 0x14015605e
int3
mov rcx, qword [rsp + 0xe0]
mov qword [rdx], rcx
mov r8d, 0xaaaaaaaa
jmp 0x1401565c4
movabs r11, 0x8000000000000001
add r11, r10
cmp r11, 2
setae r11b
cmp r10, rbx
sete r10b
or r10b, r11b
jne 0x1401560a8
int3
movabs r8, 0x8000000000000001
add r8, rdx
cmp r8, 2
setae r8b
cmp rdx, rcx
sete dl
or dl, r8b
mov r8d, r14d
jne 0x140156918
int3
mov rax, qword [rsp + 0x48]
movabs rdx, 0x8000000000000001
add rdx, rax
cmp rdx, 2
setae dl
cmp rax, r9
sete r8b
or r8b, dl
mov r8d, r14d
mov eax, dword [rsp + 0x2c]
mov rdx, r9
jne 0x140156342
int3
mov rcx, qword [rsp + 0x48]
movabs rax, 0x8000000000000001
add rax, rcx
cmp rax, 2
setae al
mov rdx, qword [rsp + 0x30]
cmp rcx, rdx
sete cl
or cl, al
mov rax, rdx
jne 0x1401568c7
int3
mov rcx, qword [0x14032e5f0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14015658c
lea r10, [r9 + r11]
cmp r10, 2
setae r10b
cmp r9, r8
sete r9b
or r9b, r10b
jne 0x140156c17
int3
lea r11, [r10 + rbx]
cmp r11, 2
setae r11b
cmp r10, r9
sete r10b
or r10b, r11b
mov r11, rbx
jne 0x140156c5d
int3
mov r13, r9
mov ebx, r14d
mov r14d, r8d
xor r12d, r12d
jmp 0x140156e37
mov r13, r9
mov ebp, r14d
mov r14d, r15d
xor r15d, r15d
jmp 0x140156f37
xor r15d, r15d
jmp 0x14015711a
mov rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x40]
mov qword [rdx], rcx
jmp 0x1401574c6
mov al, 1
jmp 0x1401573f6
mov rcx, qword [0x14032e5f0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14015748c
mov rax, qword [0x1402dd7b8]
mov r14, rcx
test al, 1
je 0x1401572e6
lea rbx, [rsp + 0x108]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rbx], rax
lea r14, [rsp + 0x100]
mov rcx, r14
call fcn.1401a84a0
mov r9, qword [r14]
lea rcx, [rsp + 0xe0]
mov rdx, rbx
xor r8d, r8d
call fcn.1401a7a20
mov r14, qword [rbx]
cmp r15, r14
cmovl r14, r15
jmp 0x1401572e6
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x40]
mov qword [rdx], rcx
jmp 0x140157392
lea rax, [rcx + rsi]
cmp rax, 2
setae al
cmp rcx, r15
sete dl
or dl, al
mov r14, rcx
jne 0x1401572ba
int3
mov rcx, qword [0x14032e5f0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140157358
mov rax, qword [rsp + 0xc8]
lea rdx, [rax + rsi]
cmp rdx, 2
jae 0x140157b79
cmp rcx, rax
je 0x140157bb2
shr rax, 0x3f
not rax
add rax, rsi
mov r15, rcx
mov r14, rax
jmp 0x1401572ba
xor edx, edx
cmp rcx, rax
setns dl
movabs r8, 0x7fffffffffffffff
add r8, rdx
mov r14, rcx
sub r14, rax
cmovo r14, r8
mov r15, rcx
jmp 0x1401572ba
int3
int3
int3
int3
int3
int3
int3