Function at 0x140096a00
Capabilities:
Get number of processors

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x338
lea rbp, [rsp + 0x80]
and rsp, 0xffffffffffffff80
mov rbx, rsp
mov qword [rbx + 0x328], rbp
mov qword [rbp + 0x2b0], 0xfffffffffffffffe
mov qword [rbx + 0x2a8], r9
mov rsi, rdx
mov r14, rcx
mov qword [rbx + 0x1f0], r8
cmp byte [r8 + 0x10], 2
mov qword [rbx + 0x70], rdx
mov qword [rbx + 0x130], rcx
jne 0x140096d1d
cmp qword [r14 + 0x58], 0
je 0x140096d1d
mov rcx, qword [r14 + 0x60]
mov rdx, qword [r14 + 0x68]
mov r8, rsi
call fcn.140098d90
mov rcx, qword [r14 + 0x40]
mov rdx, qword [r14 + 0x48]
mov r8, rax
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movzx r8d, byte [rsi]
mov r9, qword [rsi + 8]
mov qword [rbx + 0x120], r9
movzx r9d, byte [rsi + 1]
mov byte [rbx + 0x108], r9b
mov r9, qword [rsi + 0x18]
mov qword [rbx + 0x110], r9
mov r9, qword [rsi + 0x20]
mov qword [rbx + 0x118], r9
neg r9
mov qword [rbx + 0x60], r9
xor r9d, r9d
mov qword [rbx + 0x128], r9
pcmpeqd xmm1, xmm1
mov qword [rbx + 0x138], r8
and rax, rdx
movdqu xmm2, xmmword [rcx + rax]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r9d, xmm3
test r9d, r9d
mov qword [rbx + 0x1f8], rax
jne 0x140096b7a
pcmpeqb xmm2, xmm1
pmovmskb r9d, xmm2
test r9d, r9d
mov rsi, qword [rbx + 0x70]
mov r14, qword [rbx + 0x130]
jne 0x140096d1d
mov r9, qword [rbx + 0x128]
add rax, r9
add rax, 0x10
add r9, 0x10
mov qword [rbx + 0x128], r9
jmp 0x140096ae8
test r9b, r9b
je 0x14009809d
lea r9d, [r15 - 1]
and r9d, r15d
test r9w, r9w
mov rax, qword [rbx + 0x1f8]
mov rcx, rsi
mov rdx, rdi
mov r8, qword [rbx + 0x138]
je 0x140096b09
mov r15d, r9d
tzcnt r9d, r15d
add r9, rax
mov rdi, rdx
and r9, rdx
neg r9
lea r9, [r9 + r9*8]
mov rsi, rcx
lea r12, [rcx + r9*8]
cmp r8d, 1
je 0x140096c50
cmp r8d, 2
jne 0x14009809d
movzx r9d, byte [r12 - 0x48]
cmp r9b, 2
jne 0x140096b50
mov rax, qword [rbx + 0x120]
mov rax, qword [rax + 0x10]
mov r9, qword [r12 - 0x40]
cmp rax, qword [r9 + 0x10]
jne 0x140096b59
mov rcx, qword [rbx + 0x120]
mov r14, qword [rcx + 8]
mov r10, qword [r9 + 8]
mov r13, rax
neg r13
mov r9, 0xffffffffffffffff
nop dword [rax + rax]
lea rcx, [r9 + r13]
cmp rcx, 0xffffffffffffffff
je 0x140096c90
movzx ecx, byte [r14 + r9 + 1]
movzx edx, byte [r10 + r9 + 1]
lea r8d, [rcx - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
lea r11d, [rdx - 0x41]
cmp r11b, 0x1a
setb r11b
shl r11b, 5
or r8b, cl
or r11b, dl
inc r9
cmp r8b, r11b
je 0x140096bf0
cmp r9, rax
jb 0x140096b59
jmp 0x140096c90
movzx r9d, byte [r12 - 0x48]
cmp r9b, 1
jne 0x140096b50
movzx r9d, byte [r12 - 0x47]
cmp byte [rbx + 0x108], 0
je 0x140096c79
test r9b, r9b
jne 0x140096c90
jmp 0x140096b59
test r9b, r9b
jne 0x140096b59
nop word cs:[rax + rax]
mov rax, qword [rbx + 0x118]
cmp rax, qword [r12 - 0x28]
jne 0x140096b59
mov r10, qword [r12 - 0x30]
mov r9, 0xffffffffffffffff
nop
mov rax, qword [rbx + 0x60]
lea rcx, [rax + r9]
cmp rcx, 0xffffffffffffffff
je 0x140096d0c
mov rax, qword [rbx + 0x110]
movzx ecx, byte [rax + r9 + 1]
movzx edx, byte [r10 + r9 + 1]
lea r8d, [rcx - 0x41]
cmp r8b, 0x1a
setb r8b
shl r8b, 5
lea r11d, [rdx - 0x41]
cmp r11b, 0x1a
setb r11b
shl r11b, 5
or r8b, cl
or r11b, dl
inc r9
cmp r8b, r11b
je 0x140096cb0
cmp r9, qword [rbx + 0x118]
jb 0x140096b59
mov rcx, qword [rbx + 0x1f0]
call fcn.14006f750
jmp 0x140097b58
mov rcx, qword [rbx + 0x1f0]
mov rax, qword [rcx + 0x30]
mov qword [rbx + 0x170], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqa xmmword [rbx + 0x160], xmm2
movdqa xmmword [rbx + 0x150], xmm1
movdqa xmmword [rbx + 0x140], xmm0
lea rcx, [r14 + 0x70]
mov byte [rbx + 0x5c], 1
mov qword [rbx + 0x110], rcx
mov rdx, rsi
call fcn.140099010
mov r15, rax
test rax, rax
je 0x140097124
lea r14, [rbx + 0x322]
lea r13, [rbx + 0xb8]
xor edi, edi
lea r12, [rbx + 0x80]
lea rsi, [rbx + 0x1c0]
jmp 0x140096dac
mov byte [rbx + 0x5c], 1
mov rcx, rsi
call fcn.14006f530
mov rax, qword [r15 + 0x18]
test rax, rax
je 0x1400970ef
mov rcx, qword [r15 + 0x10]
lea rdx, [rcx + 1]
mov r8, qword [r15]
mov r9, qword [r15 + 8]
cmp rdx, r9
cmovb r9, rdi
neg r9
lea rdx, [rcx + r9]
inc rdx
mov qword [r15 + 0x10], rdx
dec rax
mov qword [r15 + 0x18], rax
mov rax, qword [r8 + rcx*8]
mov qword [rbx + 0x1c0], rax
movzx eax, byte [rax + 0x80]
test al, al
jne 0x140096da0
movzx eax, byte [rbx + 0x171]
mov byte [rbx + 0x171], 2
cmp al, 2
je 0x1400980be
movzx ecx, byte [rbx + 0x170]
mov byte [rbx + 0x320], cl
movaps xmm0, xmmword [rbx + 0x140]
movaps xmm1, xmmword [rbx + 0x150]
movaps xmm2, xmmword [rbx + 0x160]
movaps xmmword [rbx + 0x310], xmm2
movaps xmmword [rbx + 0x300], xmm1
movaps xmmword [rbx + 0x2f0], xmm0
mov byte [rbx + 0x321], al
lea rcx, [rbx + 0x172]
movzx eax, word [rcx + 4]
mov word [r14 + 4], ax
mov eax, dword [rcx]
mov dword [r14], eax
mov byte [rbx + 0x5d], 0
mov rcx, r12
lea rdx, [rbx + 0x2f0]
call fcn.140099290
cmp byte [rbx + 0xe9], 2
mov rax, r12
je 0x140096ebc
mov rax, qword [rbx + 0xb0]
mov qword [rbx + 0x170], rax
movups xmm0, xmmword [rbx + 0x80]
movups xmm1, xmmword [rbx + 0x90]
movups xmm2, xmmword [rbx + 0xa0]
movaps xmmword [rbx + 0x160], xmm2
movaps xmmword [rbx + 0x150], xmm1
movaps xmmword [rbx + 0x140], xmm0
mov rax, r13
mov rcx, qword [rax + 0x30]
mov qword [rbx + 0x1b0], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movaps xmmword [rbx + 0x1a0], xmm2
movaps xmmword [rbx + 0x190], xmm1
movaps xmmword [rbx + 0x180], xmm0
mov rax, qword [rbx + 0x1c0]
mov qword [rbx + 0xb0], rcx
movaps xmmword [rbx + 0xa0], xmm2
movaps xmmword [rbx + 0x90], xmm1
movaps xmmword [rbx + 0x80], xmm0
mov qword [rbx + 0x250], rax
movzx ecx, byte [rax + 0x80]
test cl, cl
jne 0x140096f29
mov cl, 1
xchg byte [rax + 0x48], cl
test cl, cl
je 0x14009701a
movzx eax, byte [rbx + 0xb0]
mov byte [rbx + 0x230], al
movdqa xmm0, xmmword [rbx + 0x80]
movdqa xmm1, xmmword [rbx + 0x90]
movdqa xmm2, xmmword [rbx + 0xa0]
movdqa xmmword [rbx + 0x220], xmm2
movdqa xmmword [rbx + 0x210], xmm1
movdqa xmmword [rbx + 0x200], xmm0
movzx eax, byte [rbx + 0xb1]
mov byte [rbx + 0x60], al
mov eax, dword [r13 - 6]
mov dword [rbx + 0x78], eax
movzx eax, word [r13 - 2]
mov word [rbx + 0x7c], ax
mov byte [rbx + 0x5d], 1
lea rcx, [rbx + 0x250]
call fcn.14006f530
movzx eax, byte [rbx + 0x171]
cmp byte [rbx + 0x60], 2
jne 0x140096faa
cmp al, 2
jne 0x140096dac
jmp 0x1400970e8
cmp al, 2
je 0x140096fba
lea rcx, [rbx + 0x140]
call fcn.14006f750
movzx eax, byte [rbx + 0x230]
mov byte [rbx + 0x170], al
movdqa xmm0, xmmword [rbx + 0x200]
movdqa xmm1, xmmword [rbx + 0x210]
movdqa xmm2, xmmword [rbx + 0x220]
movdqa xmmword [rbx + 0x160], xmm2
movdqa xmmword [rbx + 0x150], xmm1
movdqa xmmword [rbx + 0x140], xmm0
movzx eax, byte [rbx + 0x60]
mov byte [rbx + 0x171], al
movzx eax, word [rbx + 0x7c]
lea rcx, [rbx + 0x172]
mov word [rcx + 4], ax
mov eax, dword [rbx + 0x78]
mov dword [rcx], eax
jmp 0x140096dac
lea rcx, [rax + 0x10]
mov qword [rbx + 0x2b0], rcx
cmp byte [rax + 0x41], 2
jne 0x140098154
mov rdx, qword [rbx + 0xb0]
mov qword [rcx + 0x30], rdx
movdqa xmm0, xmmword [rbx + 0x80]
movdqa xmm1, xmmword [rbx + 0x90]
movdqa xmm2, xmmword [rbx + 0xa0]
movdqu xmmword [rcx + 0x20], xmm2
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
xor edx, edx
xchg byte [rax + 0x48], dl
movzx edx, byte [rax + 0x80]
test dl, dl
je 0x140097079
mov dl, 1
xchg byte [rax + 0x48], dl
test dl, dl
je 0x140097082
mov byte [rbx + 0x60], 2
jmp 0x140096f80
movzx edx, byte [rax + 0x41]
mov byte [rax + 0x41], 2
mov byte [rbx + 0x60], dl
cmp dl, 2
jne 0x1400970a0
xor ecx, ecx
xchg byte [rax + 0x48], cl
mov byte [rbx + 0x60], 2
jmp 0x140096f80
movzx edx, byte [rcx + 0x30]
mov byte [rbx + 0x230], dl
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqu xmm2, xmmword [rcx + 0x20]
movdqa xmmword [rbx + 0x220], xmm2
movdqa xmmword [rbx + 0x210], xmm1
movdqa xmmword [rbx + 0x200], xmm0
mov ecx, dword [rax + 0x42]
mov dword [rbx + 0x78], ecx
movzx ecx, word [rax + 0x46]
mov word [rbx + 0x7c], cx
xor ecx, ecx
xchg byte [rax + 0x48], cl
jmp 0x140096f80
cmp qword [r15 + 0x18], 0
jne 0x140097124
mov byte [rbx + 0x5c], 1
lea rcx, [rbx + 0x80]
mov rdx, qword [rbx + 0x110]
mov r8, qword [rbx + 0x70]
call fcn.140099400
cmp qword [rbx + 0x80], 0
je 0x140097124
mov byte [rbx + 0x5c], 1
lea rcx, [rbx + 0x80]
call fcn.14006f350
cmp byte [rbx + 0x171], 2
mov rsi, qword [rbx + 0x70]
je 0x140098022
mov rax, qword [rbx + 0x170]
mov qword [rbx + 0x280], rax
movdqa xmm0, xmmword [rbx + 0x140]
movdqa xmm1, xmmword [rbx + 0x150]
movdqa xmm2, xmmword [rbx + 0x160]
movdqa xmmword [rbx + 0x270], xmm2
movdqa xmmword [rbx + 0x260], xmm1
movdqa xmmword [rbx + 0x250], xmm0
movzx eax, byte [rsi]
test rax, rax
je 0x1400971ae
cmp eax, 1
mov rdi, qword [rbx + 0x130]
jne 0x1400971d8
movzx ecx, byte [rsi + 1]
mov al, 1
mov dword [rbx + 0x120], eax
mov dword [rbx + 0x138], 0
mov dword [rbx + 0x118], 0
mov dl, 1
jmp 0x140097280
mov dword [rbx + 0x138], 0
mov al, 1
mov dword [rbx + 0x118], eax
mov dword [rbx + 0x120], 0
xor edx, edx
mov rdi, qword [rbx + 0x130]
jmp 0x140097280
movzx eax, byte [0x14026d308]
mov rcx, qword [0x14026d258]
test rcx, rcx
jne 0x140097204
call qword [case.0x14000382e.2]
test rax, rax
je 0x140098171
mov rcx, rax
mov qword [0x14026d258], rax
mov r8d, 0x20
xor edx, edx
call qword [case.0x14000382e.1]
mov qword [rbx + 0x108], rax
test rax, rax
je 0x140098171
mov rdx, qword [rsi + 8]
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov r9, qword [rdx + 0x10]
add rdx, 0x18
lea rcx, [rbx + 0x180]
call qword [rax]
movdqu xmm0, xmmword [rbx + 0x180]
movdqu xmm1, xmmword [rbx + 0x190]
mov rax, qword [rbx + 0x108]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov dl, 2
mov cl, 1
mov dword [rbx + 0x138], ecx
mov dword [rbx + 0x120], 0
mov dword [rbx + 0x118], 0
mov rsi, qword [rbx + 0x70]
mov dword [rbx + 0x60], edx
mov byte [rbx + 0x80], dl
mov byte [rbx + 0x6f], cl
mov byte [rbx + 0x81], cl
mov qword [rbx + 0x108], rax
mov qword [rbx + 0x88], rax
mov rax, qword [rsi + 0x10]
mov r8, qword [rsi + 0x18]
lea rdx, [rsi + 0x28]
mov r9, qword [rsi + 0x20]
lea rcx, [rbx + 0x180]
call qword [rax]
movups xmm0, xmmword [rbx + 0x180]
movdqu xmm1, xmmword [rbx + 0x190]
movdqu xmmword [rbx + 0xa0], xmm1
movups xmmword [rbx + 0x90], xmm0
lea rax, [rdi + 0x40]
mov qword [rbx + 0x238], rax
lea rax, [rdi + 0x60]
mov qword [rbx + 0x290], rax
mov rcx, qword [rdi + 0x60]
mov rdx, qword [rdi + 0x68]
lea r8, [rbx + 0x80]
call fcn.140098d90
mov r10, qword [rdi + 0x40]
mov rcx, qword [rdi + 0x48]
mov rdx, rax
shr rdx, 0x39
mov qword [rbx + 0x2a0], rdx
movd xmm0, edx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
mov rdx, qword [rbx + 0x98]
mov qword [rbx + 0x1f8], rdx
mov r9, qword [rbx + 0xa0]
mov qword [rbx + 0x128], r9
neg r9
mov qword [rbx + 0x110], r9
xor edx, edx
mov qword [rbx + 0x240], rdx
pcmpeqd xmm1, xmm1
mov qword [rbx + 0x298], rax
mov rdx, rax
and rdx, rcx
movdqu xmm2, xmmword [r10 + rdx]
movdqa xmm3, xmm0
pcmpeqb xmm3, xmm2
pmovmskb r8d, xmm3
test r8d, r8d
jne 0x1400973d3
pcmpeqb xmm2, xmm1
pmovmskb r8d, xmm2
test r8d, r8d
jne 0x140097a09
mov rax, qword [rbx + 0x240]
add rdx, rax
add rdx, 0x10
add rax, 0x10
mov qword [rbx + 0x240], rax
jmp 0x140097366
cmp byte [rbx + 0x118], 0
jne 0x140098080
lea r8d, [rdi - 1]
and r8d, edi
test r8w, r8w
mov r10, r11
mov rcx, rdx
mov rdx, r9
je 0x140097381
mov edi, r8d
tzcnt r8d, edi
mov r9, rdx
add r8, rdx
mov rdx, rcx
and r8, rcx
neg r8
lea r8, [r8 + r8*8]
lea rax, [r10 + r8*8]
mov qword [rbx + 0x60], rax
mov r11, r10
movzx r8d, byte [r10 + r8*8 - 0x48]
cmp r8, 1
je 0x1400974b0
cmp r8d, 2
jne 0x140098080
cmp byte [rbx + 0x138], 0
je 0x1400973b0
mov rax, qword [rbx + 0x60]
mov r8, qword [rax - 0x40]
mov rsi, qword [r8 + 0x10]
mov rax, qword [rbx + 0x108]
cmp rsi, qword [rax + 0x10]
jne 0x1400973bd
mov r13, qword [r8 + 8]
mov rax, qword [rbx + 0x108]
mov r8, qword [rax + 8]
mov r10, rsi
neg r10
mov r12, 0xffffffffffffffff
nop word cs:[rax + rax]
lea r15, [r10 + r12]
cmp r15, 0xffffffffffffffff
je 0x1400974e0
movzx r15d, byte [r13 + r12 + 1]
movzx ecx, byte [r8 + r12 + 1]
lea eax, [r15 - 0x41]
cmp al, 0x1a
setb al
shl al, 5
lea r14d, [rcx - 0x41]
cmp r14b, 0x1a
setb r14b
shl r14b, 5
or al, r15b
or r14b, cl
inc r12
cmp al, r14b
je 0x140097460
cmp r12, rsi
jb 0x1400973bd
jmp 0x1400974e0
cmp byte [rbx + 0x120], 0
je 0x1400973b0
mov rax, qword [rbx + 0x60]
cmp byte [rax - 0x47], 0
je 0x1400974d2
cmp byte [rbx + 0x6f], 0
jne 0x1400974e0
jmp 0x1400973bd
cmp byte [rbx + 0x6f], 0
jne 0x1400973bd
nop dword [rax]
mov rax, qword [rbx + 0x60]
mov rcx, qword [rbx + 0x128]
cmp qword [rax - 0x28], rcx
jne 0x1400973bd
mov rax, qword [rbx + 0x60]
mov r10, qword [rax - 0x30]
mov r8, 0xffffffffffffffff
nop word cs:[rax + rax]
mov rax, qword [rbx + 0x110]
add rax, r8
cmp rax, 0xffffffffffffffff
je 0x14009756d
movzx eax, byte [r10 + r8 + 1]
mov rcx, qword [rbx + 0x1f8]
movzx ecx, byte [rcx + r8 + 1]
lea esi, [rax - 0x41]
cmp sil, 0x1a
setb sil
shl sil, 5
lea r14d, [rcx - 0x41]
cmp r14b, 0x1a
setb r14b
shl r14b, 5
or sil, al
or r14b, cl
inc r8
cmp sil, r14b
je 0x140097510
cmp r8, qword [rbx + 0x128]
jb 0x1400973bd
movdqu xmm0, xmmword [rbx + 0x80]
movdqu xmm1, xmmword [rbx + 0x90]
movdqu xmm2, xmmword [rbx + 0xa0]
movdqa xmmword [rbx + 0x1a0], xmm2
movdqa xmmword [rbx + 0x190], xmm1
movdqa xmmword [rbx + 0x180], xmm0
movdqa xmmword [rbx + 0x80], xmm0
movdqa xmmword [rbx + 0xa0], xmm2
movdqa xmmword [rbx + 0x90], xmm1
mov rax, qword [rbx + 0x60]
mov qword [rbx + 0xb0], rax
mov rax, qword [rbx + 0x238]
mov qword [rbx + 0xb8], rax
movzx eax, byte [rbx + 0x80]
cmp al, 3
mov r15, qword [rbx + 0x130]
je 0x140097640
cmp al, 2
jb 0x14009761a
mov r8, qword [rbx + 0x88]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
lea rcx, [r8 + 0x18]
mov qword [rbx + 0x110], r8
mov r8, qword [r8 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x14026d258]
xor edx, edx
mov r8, qword [rbx + 0x110]
call qword [case.0x14001f69e.0]
mov rax, qword [rbx + 0x90]
mov rdx, qword [rbx + 0x98]
mov rax, qword [rax + 0x10]
lea rcx, [rbx + 0xa8]
mov r8, qword [rbx + 0xa0]
mov byte [rbx + 0x5a], 1
call rax
mov rax, qword [r15 + 0xa0]
mov rcx, qword [rbx + 0x60]
cmp rax, qword [rcx - 8]
jbe 0x140097b48
call fcn.14016fae0
mov qword [rbx + 0xb8], rax
mov dword [rbx + 0xc0], edx
mov rax, qword [rbx + 0x280]
mov qword [rbx + 0xb0], rax
movdqa xmm0, xmmword [rbx + 0x250]
movdqa xmm1, xmmword [rbx + 0x260]
movdqa xmm2, xmmword [rbx + 0x270]
movdqa xmmword [rbx + 0xa0], xmm2
movdqa xmmword [rbx + 0x90], xmm1
movdqa xmmword [rbx + 0x80], xmm0
mov rdi, qword [rbx + 0x60]
mov rdx, qword [rdi - 8]
cmp rdx, qword [rdi - 0x10]
jne 0x1400976c0
lea rcx, [rdi - 0x18]
call fcn.140099820
mov rdx, qword [rdi - 8]
mov rsi, qword [rbx + 0x70]
mov rax, qword [rdi - 0x18]
lea rcx, [rdx + rdx*8]
mov r8, qword [rbx + 0xc0]
mov qword [rax + rcx*8 + 0x40], r8
movdqa xmm0, xmmword [rbx + 0x80]
movdqa xmm1, xmmword [rbx + 0x90]
movdqa xmm2, xmmword [rbx + 0xa0]
movdqa xmm3, xmmword [rbx + 0xb0]
movdqu xmmword [rax + rcx*8 + 0x30], xmm3
movdqu xmmword [rax + rcx*8 + 0x20], xmm2
movdqu xmmword [rax + rcx*8 + 0x10], xmm1
movdqu xmmword [rax + rcx*8], xmm0
inc rdx
mov qword [rdi - 8], rdx
cmp qword [r15 + 0xa8], 0
jne 0x140098022
mov edi, dword [r15 + 0xb8]
cmp edi, 0x3b9aca00
je 0x140098022
mov rax, qword [rbx + 0x2a8]
mov rsi, qword [rax]
mov r14, qword [r15 + 0xb0]
mov qword [rbx + 0x90], 0
mov byte [rbx + 0xa0], 0
mov qword [rbx + 0xa8], 0
mov byte [rbx + 0xb8], 0
mov word [rbx + 0xc0], 0
mov qword [rbx + 0x80], 1
mov qword [rbx + 0x88], 1
movzx eax, byte [0x14026d308]
mov rcx, qword [0x14026d258]
test rcx, rcx
jne 0x1400977b7
call qword [case.0x14000382e.2]
test rax, rax
je 0x140098189
mov rcx, rax
mov qword [0x14026d258], rax
mov r8d, 0x48
xor edx, edx
call qword [case.0x14000382e.1]
test rax, rax
je 0x140098189
mov rcx, qword [rbx + 0xc0]
mov qword [rax + 0x40], rcx
movdqu xmm0, xmmword [rbx + 0x80]
movdqu xmm1, xmmword [rbx + 0x90]
movdqu xmm2, xmmword [rbx + 0xa0]
movdqu xmm3, xmmword [rbx + 0xb0]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
lock inc qword [rax]
jle 0x1400981b1
mov qword [r15 + 0xa8], rax
mov qword [rbx + 0x248], rax
test r14, r14
jne 0x140097831
test edi, edi
je 0x1400981b5
mov byte [rbx + 0x5b], 1
call fcn.14016fae0
mov r8d, edx
mov byte [rbx + 0x5b], 1
lea r9, [0x1401f66c0]
lea rcx, [rbx + 0x80]
mov rdx, rax
call fcn.140185d70
movzx eax, byte [0x14026d308]
mov rcx, qword [0x14026d258]
test rcx, rcx
jne 0x140097883
call qword [case.0x14000382e.2]
test rax, rax
je 0x14009819d
mov rcx, rax
mov qword [0x14026d258], rax
mov r8d, 0x70
xor edx, edx
call qword [case.0x14000382e.1]
test rax, rax
je 0x14009819d
mov rdx, rax
movups xmm0, xmmword [rbx + 0xe0]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [rbx + 0xd0]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [rbx + 0xc0]
movups xmmword [rax + 0x40], xmm0
movdqu xmm0, xmmword [rbx + 0x80]
movdqu xmm1, xmmword [rbx + 0x90]
movdqu xmm2, xmmword [rbx + 0xa0]
movdqu xmm3, xmmword [rbx + 0xb0]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
jmp 0x1400978f5
pause
mov rax, qword [rsi + 8]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x1400978f3
test rax, rax
js 0x1400980df
lea rcx, [rax + 1]
lock cmpxchg qword [rsi + 8], rcx
jne 0x140097900
mov rax, qword [rbx + 0x248]
mov qword [rbx + 0x1c0], r14
mov dword [rbx + 0x1c8], edi
mov qword [rbx + 0x1d0], rdx
mov byte [rbx + 0x1d8], 0
mov ecx, dword [rbx + 0x80]
mov edx, dword [rbx + 0x83]
mov dword [rbx + 0x1d9], ecx
mov dword [rbx + 0x1dc], edx
mov qword [rbx + 0x1e8], rsi
mov qword [rbx + 0x1e0], rax
mov rsi, qword [r15]
test rsi, rsi
je 0x140097b84
mov rdi, qword [r15 + 8]
mov r14, qword [rdi + 0x10]
movzx eax, byte [0x14026d308]
mov rcx, qword [0x14026d258]
test rcx, rcx
jne 0x1400979a3
call qword [case.0x14000382e.2]
test rax, rax
je 0x140098204
mov rcx, rax
mov qword [0x14026d258], rax
mov r8d, 0x30
xor edx, edx
call qword [case.0x14000382e.1]
test rax, rax
je 0x140098204
movdqu xmm0, xmmword [rbx + 0x1c0]
movdqu xmm1, xmmword [rbx + 0x1d0]
movdqu xmm2, xmmword [rbx + 0x1e0]
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
dec r14
and r14, 0xfffffffffffffff0
lea rcx, [r14 + rsi]
add rcx, 0x10
mov r9, qword [rdi + 0x18]
mov byte [rbx + 0x5b], 0
lea r8, fcn.1400999d0
mov rdx, rax
call r9
jmp 0x14009801e
mov r15, qword [rbx + 0x130]
cmp qword [r15 + 0x50], 0
mov rsi, qword [rbx + 0x298]
jne 0x140097a39
mov rcx, qword [rbx + 0x238]
mov rdx, qword [rbx + 0x290]
call fcn.140199610
mov r10, qword [r15 + 0x40]
mov rcx, qword [r15 + 0x48]
movups xmm0, xmmword [rbx + 0x80]
movdqu xmm1, xmmword [rbx + 0x90]
movdqu xmm2, xmmword [rbx + 0xa0]
movdqa xmmword [rbx + 0x1a0], xmm2
movdqa xmmword [rbx + 0x190], xmm1
movaps xmmword [rbx + 0x180], xmm0
and rsi, rcx
movdqu xmm0, xmmword [r10 + rsi]
pmovmskb edx, xmm0
test edx, edx
jne 0x140097a96
mov r8d, 0x10
add rsi, r8
and rsi, rcx
movdqu xmm0, xmmword [r10 + rsi]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x140097a7e
tzcnt edx, edx
add rdx, rsi
and rdx, rcx
movzx r8d, byte [r10 + rdx]
test r8b, r8b
js 0x140097abc
movdqa xmm0, xmmword [r10]
pmovmskb eax, xmm0
tzcnt edx, eax
movzx r8d, byte [r10 + rdx]
lea rax, [rdx - 0x10]
and rax, rcx
mov rcx, qword [rbx + 0x2a0]
mov byte [r10 + rdx], cl
mov byte [rax + r10 + 0x10], cl
neg rdx
lea rax, [rdx + rdx*8]
lea rcx, [r10 + rax*8]
mov qword [rbx + 0x60], rcx
and r8b, 1
movzx ecx, r8b
sub qword [r15 + 0x50], rcx
movdqa xmm0, xmmword [rbx + 0x180]
movdqa xmm1, xmmword [rbx + 0x190]
movdqa xmm2, xmmword [rbx + 0x1a0]
movdqu xmmword [r10 + rax*8 - 0x28], xmm2
movdqu xmmword [r10 + rax*8 - 0x38], xmm1
movdqu xmmword [r10 + rax*8 - 0x48], xmm0
mov qword [r10 + rax*8 - 0x18], 8
pxor xmm0, xmm0
movdqu xmmword [r10 + rax*8 - 0x10], xmm0
inc qword [r15 + 0x58]
mov rax, qword [r15 + 0xa0]
mov rcx, qword [rbx + 0x60]
cmp rax, qword [rcx - 8]
ja 0x140097655
mov byte [rbx + 0x5c], 0
lea rcx, [rbx + 0x250]
call fcn.14006f750
mov rsi, qword [rbx + 0x70]
cmp byte [rsi], 2
jb 0x140098058
mov r8, qword [rsi + 8]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
lea rcx, [r8 + 0x18]
mov qword [rbx + 0x60], r8
mov r8, qword [r8 + 0x10]
call qword [rax + 0x10]
jmp 0x140098041
mov eax, 1
lock xadd qword [0x14026d0a0], rax
mov qword [rbx + 0x78], rax
movdqu xmm0, xmmword [rbx + 0x1c0]
movdqu xmm1, xmmword [rbx + 0x1d0]
movdqu xmm2, xmmword [rbx + 0x1e0]
movdqa xmmword [rbx + 0x2d0], xmm2
movdqa xmmword [rbx + 0x2c0], xmm1
movdqa xmmword [rbx + 0x2b0], xmm0
lea rax, [rbx + 0x78]
mov qword [rbx + 0x2e0], rax
mov qword [rbx + 0x230], rax
movdqa xmmword [rbx + 0x220], xmm2
movdqa xmmword [rbx + 0x210], xmm1
movdqa xmmword [rbx + 0x200], xmm0
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x100]
cmp eax, 1
je 0x140097c5b
test eax, eax
jne 0x140098267
mov byte [rbx + 0x5f], 1
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0xb0]
lea rdx, [0x140173de0]
call fcn.140157820
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov byte [rax + 0x100], 1
mov rax, qword [rbx + 0x2e0]
mov qword [rbx + 0x1b0], rax
movdqa xmm0, xmmword [rbx + 0x2b0]
movdqa xmm1, xmmword [rbx + 0x2c0]
movdqa xmm2, xmmword [rbx + 0x2d0]
movdqa xmmword [rbx + 0x1a0], xmm2
movdqa xmmword [rbx + 0x190], xmm1
movdqa xmmword [rbx + 0x180], xmm0
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r8, qword [rax + 0xb0]
movabs rax, 0x7ffffffffffffffe
cmp r8, rax
mov qword [rbx + 0x60], r8
ja 0x140098218
lea rax, [r8 + 1]
mov ecx, dword [0x14026d30c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0xb0], rax
mov rcx, qword [rcx + 0xb8]
cmp rcx, 2
je 0x140098229
mov rax, qword [rbx + 0x1b0]
mov rax, qword [rax]
test rcx, rcx
je 0x140097e72
mov ecx, dword [0x14026d30c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rdi, qword [rcx + 0xc0]
lock inc qword [rdi]
jle 0x1400981b1
pxor xmm0, xmm0
movdqa xmmword [rbx + 0xe0], xmm0
mov qword [rbx + 0xf0], 0
mov qword [rbx + 0x80], 0xcc
mov qword [rbx + 0x88], 0
lea rcx, [0x1401ec310]
mov qword [rbx + 0x90], rcx
mov qword [rbx + 0x98], 0
mov qword [rbx + 0xa0], rdi
mov qword [rbx + 0xa8], rax
movdqu xmm0, xmmword [rbx + 0x1c0]
movdqu xmm1, xmmword [rbx + 0x1d0]
movdqu xmm2, xmmword [rbx + 0x1e0]
movdqa xmmword [rbx + 0xb0], xmm0
movdqu xmmword [rbx + 0xc0], xmm1
movdqa xmmword [rbx + 0xd0], xmm2
movzx eax, byte [0x14026d308]
mov ecx, 0x80
mov edx, 0x80
call fcn.14000e090
test rax, rax
je 0x140098253
mov rsi, rax
lea rcx, [rdi + 0x70]
movaps xmm0, xmmword [rbx + 0xf0]
movaps xmmword [rax + 0x70], xmm0
movaps xmm0, xmmword [rbx + 0xe0]
movaps xmmword [rax + 0x60], xmm0
movaps xmm0, xmmword [rbx + 0xd0]
movaps xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rbx + 0xc0]
movaps xmmword [rax + 0x40], xmm0
movdqa xmm0, xmmword [rbx + 0x80]
movdqa xmm1, xmmword [rbx + 0x90]
movdqa xmm2, xmmword [rbx + 0xa0]
movdqa xmm3, xmmword [rbx + 0xb0]
movdqa xmmword [rax + 0x30], xmm3
movdqa xmmword [rax + 0x20], xmm2
movdqa xmmword [rax + 0x10], xmm1
movdqa xmmword [rax], xmm0
mov qword [rbx + 0x80], rax
mov rdx, rax
mov r8, rax
call fcn.140099e50
mov qword [rbx + 0x80], rsi
test rax, rax
je 0x140097fe2
add rdi, 0x10
mov rcx, rdi
mov rdx, rax
xor r8d, r8d
call fcn.140180420
jmp 0x140097fe2
mov ecx, dword [0x14026d30c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rdi, qword [rcx + 0xc0]
lock inc qword [rdi]
jle 0x1400981b1
pxor xmm0, xmm0
movdqa xmmword [rbx + 0xe0], xmm0
mov qword [rbx + 0xf0], 0
mov qword [rbx + 0x80], 0xcc
mov qword [rbx + 0x88], 0
lea rcx, [0x1401ec720]
mov qword [rbx + 0x90], rcx
mov qword [rbx + 0x98], 0
mov qword [rbx + 0xa0], rdi
mov qword [rbx + 0xa8], rax
movdqu xmm0, xmmword [rbx + 0x1c0]
movdqu xmm1, xmmword [rbx + 0x1d0]
movdqu xmm2, xmmword [rbx + 0x1e0]
movdqa xmmword [rbx + 0xb0], xmm0
movdqu xmmword [rbx + 0xc0], xmm1
movdqa xmmword [rbx + 0xd0], xmm2
movzx eax, byte [0x14026d308]
mov ecx, 0x80
mov edx, 0x80
call fcn.14000e090
test rax, rax
je 0x1400982f1
mov rsi, rax
add rdi, 0x60
movaps xmm0, xmmword [rbx + 0xf0]
movaps xmmword [rax + 0x70], xmm0
movaps xmm0, xmmword [rbx + 0xe0]
movaps xmmword [rax + 0x60], xmm0
movaps xmm0, xmmword [rbx + 0xd0]
movaps xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rbx + 0xc0]
movaps xmmword [rax + 0x40], xmm0
movdqa xmm0, xmmword [rbx + 0x80]
movdqa xmm1, xmmword [rbx + 0x90]
movdqa xmm2, xmmword [rbx + 0xa0]
movdqa xmm3, xmmword [rbx + 0xb0]
movdqa xmmword [rax + 0x30], xmm3
movdqa xmmword [rax + 0x20], xmm2
movdqa xmmword [rax + 0x10], xmm1
movdqa xmmword [rax], xmm0
mov qword [rbx + 0x80], rax
mov rcx, rdi
mov rdx, rax
mov r8, rax
call fcn.140099e50
mov qword [rbx + 0x80], rsi
test rax, rax
je 0x140097fe2
mov ecx, dword [0x14026d30c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
lea rcx, [rcx + 0xc0]
mov rdx, rax
call fcn.14017e580
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xb0]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rsi], rcx
je 0x14009801e
mov rax, qword [rsi + 0x10]
mov rax, qword [rax + 0x20]
mov byte [rbx + 0x5b], 0
mov rcx, rsi
call rax
mov rsi, qword [rbx + 0x70]
cmp byte [rsi], 2
jb 0x140098058
mov r8, qword [rsi + 8]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
lea rcx, [r8 + 0x18]
mov qword [rbx + 0x60], r8
mov r8, qword [r8 + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x14026d258]
xor edx, edx
mov r8, qword [rbx + 0x60]
call qword [case.0x14001f69e.0]
mov rsi, qword [rbx + 0x70]
lea rcx, [rsi + 0x28]
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
mov r8, qword [rsi + 0x20]
call qword [rax + 0x10]
nop
lea rsp, [rbp + 0x2b8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [0x1401f37f0]
lea r8, [0x1401d4fb8]
mov edx, 0x28
call fcn.1401949c0
jmp 0x140098300
mov byte [rbx + 0x5e], 1
lea rcx, [0x1401f37f0]
lea r8, [0x1401d4fb8]
mov edx, 0x28
call fcn.1401949c0
jmp 0x140098300
mov byte [rbx + 0x5d], 0
lea rcx, [0x1401eb7b0]
lea r8, [0x1401eb7c8]
mov edx, 0x12
call fcn.140194db0
jmp 0x140098300
mov qword [rbx + 0x60], rdx
lea rax, [0x1401eadd0]
mov qword [rbx + 0x180], rax
lea rax, [0x140011eb0]
mov qword [rbx + 0x188], rax
lea rax, [0x140219e08]
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], 1
mov qword [rbx + 0xa0], 0
lea rax, [rbx + 0x180]
mov qword [rbx + 0x90], rax
mov qword [rbx + 0x98], 1
lea rdx, [0x1401eae30]
lea rcx, [rbx + 0x80]
call fcn.140194800
jmp 0x140098300
lea rcx, [0x1401e8ef0]
lea r8, [0x1401e8f80]
mov edx, 0x20
call fcn.1401949c0
jmp 0x140098300
mov byte [rbx + 0x5a], 1
mov ecx, 8
mov edx, 0x20
call fcn.140194470
jmp 0x140098300
mov ecx, 8
mov edx, 0x48
call fcn.140194470
jmp 0x140098300
mov ecx, 8
mov edx, 0x70
call fcn.140194470
jmp 0x140098300
ud2
lea rax, [0x1401f6648]
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], 1
lea rax, [0x1402199d8]
mov qword [rbx + 0x90], rax
pxor xmm0, xmm0
movdqu xmmword [rbx + 0x98], xmm0
mov byte [rbx + 0x5b], 1
lea rdx, [0x1401eb798]
lea rcx, [rbx + 0x80]
call fcn.140194800
jmp 0x140098300
mov ecx, 8
mov edx, 0x30
call fcn.140194470
jmp 0x140098300
lea rcx, [0x1401f4438]
call fcn.140194cb0
jmp 0x140098300
lea rcx, [rbx + 0x2b0]
call fcn.1400999d0
mov eax, dword [0x14026d30c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
dec qword [rax + 0xb0]
xor eax, eax
jmp 0x140098279
mov ecx, 0x80
mov edx, 0x80
call fcn.140194470
jmp 0x140098300
mov byte [rbx + 0x5b], 0
lea rcx, [rbx + 0x2b0]
call fcn.1400999d0
mov al, 1
mov byte [rbx + 0x200], al
lea rax, [rbx + 0x200]
mov qword [rbx + 0x180], rax
lea rax, [0x140179500]
mov qword [rbx + 0x188], rax
lea rax, [0x140219e08]
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], 1
mov qword [rbx + 0xa0], 0
lea rax, [rbx + 0x180]
mov qword [rbx + 0x90], rax
mov qword [rbx + 0x98], 1
mov byte [rbx + 0x5b], 0
lea rdx, [0x1401ebd20]
lea rcx, [rbx + 0x80]
call fcn.140194800
jmp 0x140098300
mov ecx, 0x80
mov edx, 0x80
call fcn.140194470
ud2