Function at 0x18000ae60
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x378]
sub rsp, 0x450
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
mov rax, qword [0x18004d010]
xor rax, rsp
mov qword [rbp + 0x308], rax
mov r13, rcx
mov qword [rsp + 0x70], rcx
mov qword [rbp + 0x200], rcx
movsd xmm0, qword [str.OPT_b]
movsd qword [rbp + 0x1c0], xmm0
movzx eax, word [0x180047c40]
mov word [rbp + 0x1c8], ax
movzx edx, byte [0x180047c42]
mov byte [rbp + 0x1c0], 0x77
xor byte [rbp + 0x1c1], 0x39
xor byte [rbp + 0x1c2], 0x3a
xor byte [rbp + 0x1c3], 0x3b
xor byte [rbp + 0x1c4], 0x3c
xor byte [rbp + 0x1c5], 0x3d
xor byte [rbp + 0x1c6], 0x3e
xor byte [rbp + 0x1c7], 0x3f
xor al, 0x40
mov byte [rbp + 0x1c8], al
xor byte [rbp + 0x1c9], 0x41
xor dl, 0x42
mov byte [rbp + 0x1ca], dl
lea rcx, [rbp + 0x1c0]
call fcn.180009c20
mov rdi, rax
movsd xmm0, qword [0x180047bc0]
movsd qword [rbp + 0x248], xmm0
mov ecx, dword [0x180047bc8]
mov dword [rbp + 0x250], ecx
movzx ecx, word [0x180047bcc]
mov word [rbp + 0x254], cx
movzx ecx, byte [0x180047bce]
mov byte [rbp + 0x256], cl
xor ebx, ebx
mov r8d, ebx
lea r12d, [rbx + 4]
lea r14d, [rbx + 0x1f]
mov esi, dword [0x18004d018]
cmp esi, 2
jl 0x18000b09b
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r14d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x180048040]
movd xmm0, dword [0x180047bc0]
pxor xmm2, xmm0
movd dword [rbp + 0x248], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x180048040]
movd xmm0, dword [rbp + 0x24c]
pxor xmm2, xmm0
movd dword [rbp + 0x24c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x248]
add r9, rax
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18000b0b0
lea rcx, [rbp + 0x248]
call fcn.180009c20
mov qword [rbp + 0x1f8], rax
test rdi, rdi
je 0x18000f5c2
test rax, rax
je 0x18000f5c2
mov qword [rbp + 0x1d8], r13
mov r15, qword [r13 + 0x80]
movsd xmm0, qword [str._ABCDEFG89:C]
movsd qword [rbp + 0x1c0], xmm0
mov ecx, dword [0x180047a50]
mov dword [rbp + 0x1c8], ecx
mov r14, rdi
mov r10d, 0x1f
cmp byte [0x180047a53], bl
je 0x18000b2a0
mov r8d, ebx
cmp esi, 2
jl 0x18000b262
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str._ABCDEFG89:C]
pxor xmm2, xmm1
movd dword [rbp + 0x1c0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1c4]
pxor xmm2, xmm1
movd dword [rbp + 0x1c4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x1c0]
add r9, rax
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18000b270
movsd xmm0, qword [0x180047c58]
movsd qword [rbp + 0xe0], xmm0
mov eax, dword [0x180047c60]
mov dword [rbp + 0xe8], eax
cmp byte [0x180047c63], bl
je 0x18000b430
mov r8d, ebx
cmp esi, 2
jl 0x18000b3e6
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047c58]
pxor xmm2, xmm1
movd dword [rbp + 0xe0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0xe4]
pxor xmm2, xmm1
movd dword [rbp + 0xe4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0xe0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18000b400
mov eax, dword [0x180047a3c]
mov dword [rbp + 0x1b8], eax
movzx eax, word [0x180047a40]
mov word [rbp + 0x1bc], ax
mov byte [rbp + 0x1b8], 0x2e
xor byte [rbp + 0x1b9], 0x39
xor byte [rbp + 0x1ba], 0x3a
xor byte [rbp + 0x1bb], 0x3b
xor byte [rbp + 0x1bc], 0x3c
xor byte [rbp + 0x1bd], 0x3d
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x30]
mov r8, r14
lea rdx, [rbp + 0x1b8]
mov rcx, r15
call fcn.180012900
mov r8d, dword [rsp + 0x30]
lea rcx, [rbp + 0x1c0]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0xe0]
mov rdx, rax
mov rcx, r15
call fcn.180012280
test rax, rax
jne 0x18000b669
movups xmm0, xmmword [0x180047b08]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [0x180047b18]
movups xmmword [rbp - 0x38], xmm1
movsd xmm0, qword [0x180047b28]
movsd qword [rbp - 0x28], xmm0
movzx eax, word [0x180047b30]
mov word [rbp - 0x20], ax
cmp esi, 2
jl 0x18000b61e
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp - 0x48]
nop word [rax + rax]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000b530
cmp eax, 0x15
jge 0x18000b660
movsxd rax, ebx
lea r8, [rbp - 0x48]
lea r8, [r8 + rax*2]
nop dword [rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x15
jl 0x18000b630
lea rcx, [rbp - 0x48]
jmp 0x18000f754
mov rdi, qword [r13 + 0x80]
lea rdx, [rax + 0x1d]
lea rcx, [rbp + 0x1d8]
call fcn.180010640
mov rdx, rax
mov rcx, rdi
call fcn.180010d80
mov rdi, rax
lea rdx, [rax + 3]
mov rcx, qword [r13 + 0x80]
call fcn.1800112e0
cmp al, 0x48
je 0x18000ba77
mov rdi, qword [r13 + 0x80]
movsd xmm0, qword [str._ABCDEFG89:C]
movsd qword [rbp + 0x1c0], xmm0
mov eax, dword [0x180047a50]
mov dword [rbp + 0x1c8], eax
cmp byte [0x180047a53], bl
je 0x18000b840
cmp esi, 2
jl 0x18000b7f6
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str._ABCDEFG89:C]
pxor xmm2, xmm1
movd dword [rbp + 0x1c0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1c4]
pxor xmm2, xmm1
movd dword [rbp + 0x1c4], xmm2
mov r8d, 8
jmp 0x18000b7f9
mov r8d, ebx
mov eax, r8d
lea r9, [rbp + 0x1c0]
add r9, rax
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18000b810
movsd xmm0, qword [0x180047b78]
movsd qword [rbp + 0xe0], xmm0
mov eax, dword [0x180047b80]
mov dword [rbp + 0xe8], eax
cmp byte [0x180047b83], bl
je 0x18000b9d0
cmp esi, 2
jl 0x18000b989
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047b78]
pxor xmm2, xmm1
movd dword [rbp + 0xe0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0xe4]
pxor xmm2, xmm1
movd dword [rbp + 0xe4], xmm2
mov r8d, 8
jmp 0x18000b98c
mov r8d, ebx
mov eax, r8d
lea r9, [rbp + 0xe0]
add r9, rax
nop dword [rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18000b9a0
mov eax, dword [0x180047a3c]
mov dword [rbp + 0x1b8], eax
movzx eax, word [0x180047a40]
mov word [rbp + 0x1bc], ax
mov byte [rbp + 0x1b8], 0x2e
xor byte [rbp + 0x1b9], 0x39
xor byte [rbp + 0x1ba], 0x3a
xor byte [rbp + 0x1bb], 0x3b
xor byte [rbp + 0x1bc], 0x3c
xor byte [rbp + 0x1bd], 0x3d
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x30]
mov r8, r14
lea rdx, [rbp + 0x1b8]
mov rcx, rdi
call fcn.180012900
mov r8d, dword [rsp + 0x30]
lea rcx, [rbp + 0x1c0]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0xe0]
mov rdx, rax
mov rcx, rdi
call fcn.180012280
mov rdi, qword [r13 + 0x80]
lea rdx, [rax + 0x1d]
lea rcx, [rbp + 0x1d8]
call fcn.180010640
mov rdx, rax
mov rcx, rdi
call fcn.180010d80
mov rdi, rax
lea rdx, [rdi + 4]
lea rcx, [rbp + 0x1d8]
call fcn.180010640
mov qword [rbp + 0x1c0], rax
mov rdx, rax
mov rcx, qword [r13 + 0x80]
call fcn.180010d80
test rax, rax
jne 0x18000bc5a
movups xmm0, xmmword [0x180047960]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [0x180047970]
movups xmmword [rsp + 0x50], xmm1
movsd xmm0, qword [0x180047980]
movsd qword [rsp + 0x60], xmm0
mov eax, dword [0x180047988]
mov dword [rsp + 0x68], eax
movzx eax, word [0x18004798c]
mov word [rsp + 0x6c], ax
cmp esi, 2
jl 0x18000bc0e
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rsp + 0x40]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000bb20
cmp eax, 0x17
jge 0x18000bc50
movsxd rax, ebx
lea r8, [rsp + 0x40]
lea r8, [r8 + rax*2]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x17
jl 0x18000bc20
lea rcx, [rsp + 0x40]
jmp 0x18000f754
mov r14, qword [r13 + 0x80]
mov ecx, dword [0x18004dec4]
mov rax, qword gs:[0x58]
mov edx, 4
mov r15, qword [rax + rcx*8]
add r15, rdx
mov eax, dword [r15]
cmp dword [0x18004df98], eax
jle 0x18000c1fa
lea rcx, [0x18004df98]
call fcn.180024c20
cmp dword [0x18004df98], 0xffffffff
jne 0x18000c1fa
movsd xmm0, qword [0x180047c68]
movsd qword [rbp + 0x248], xmm0
mov eax, dword [0x180047c70]
mov dword [rbp + 0x250], eax
movzx eax, word [0x180047c74]
mov word [rbp + 0x254], ax
movzx eax, byte [0x180047c76]
mov byte [rbp + 0x256], al
mov r8d, ebx
mov r10d, 0x1f
cmp esi, 2
jl 0x18000bdff
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047c68]
pxor xmm2, xmm1
movd dword [rbp + 0x248], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x24c]
pxor xmm2, xmm1
movd dword [rbp + 0x24c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x248]
add r9, rax
nop dword [rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18000be10
movsd xmm0, qword [0x180047bd0]
movsd qword [rbp + 0x258], xmm0
mov eax, dword [str._b7D]
mov dword [rbp + 0x260], eax
movzx eax, word [0x180047bdc]
mov word [rbp + 0x264], ax
movzx eax, byte [0x180047bde]
mov byte [rbp + 0x266], al
mov r8d, ebx
cmp esi, 2
jl 0x18000bf95
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047bd0]
pxor xmm2, xmm1
movd dword [rbp + 0x258], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x25c]
pxor xmm2, xmm1
movd dword [rbp + 0x25c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x258]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18000bfb0
mov eax, dword [0x180047a3c]
mov dword [rbp + 0x1b8], eax
movzx eax, word [0x180047a40]
mov word [rbp + 0x1bc], ax
mov byte [rbp + 0x1b8], 0x2e
xor byte [rbp + 0x1b9], 0x39
xor byte [rbp + 0x1ba], 0x3a
xor byte [rbp + 0x1bb], 0x3b
xor al, 0x3c
mov byte [rbp + 0x1bc], al
xor byte [rbp + 0x1bd], 0x3d
movsd xmm0, qword [str.VMUHWOPSn_:D]
movsd qword [rbp + 0x18], xmm0
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x20], eax
movzx eax, byte [0x180047ac4]
mov byte [rbp + 0x24], al
mov r8d, ebx
cmp esi, 2
jl 0x18000c15a
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp + 0x18], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1c]
pxor xmm2, xmm1
movd dword [rbp + 0x1c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x18]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000c170
lea rcx, [rbp + 0x18]
call fcn.180009c20
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x30]
mov r8, rax
lea rdx, [rbp + 0x1b8]
mov rcx, r14
call fcn.180012900
mov r8d, dword [rsp + 0x30]
lea rcx, [rbp + 0x248]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x258]
mov rdx, rax
mov rcx, r14
call fcn.180012280
mov qword [0x18004df38], rax
lea rcx, [0x18004df98]
call fcn.180024bc0
mov rdi, qword [0x18004df38]
test rdi, rdi
jne 0x18000c3e2
movups xmm0, xmmword [0x1800479a0]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [0x1800479b0]
movups xmmword [rbp + 0x50], xmm1
movups xmm0, xmmword [0x1800479c0]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [0x1800479d0]
movups xmmword [rbp + 0x70], xmm1
movsd xmm0, qword [0x1800479e0]
movsd qword [rbp + 0x80], xmm0
movzx eax, word [0x1800479e8]
mov word [rbp + 0x88], ax
mov r8d, ebx
cmp esi, 2
jl 0x18000c391
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp + 0x40]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x20
jl 0x18000c2a0
cmp r8d, 0x25
jge 0x18000c3d4
movsxd rax, r8d
lea r9, [rbp + 0x40]
lea r9, [r9 + rax*2]
nop dword [rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, r8w
sub ax, cx
add ax, 0x38
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x25
jl 0x18000c3a0
lea rcx, [rbp + 0x40]
call fcn.180011ac0
jmp 0x18000cb7a
mov dword [rbp + 0x1f0], ebx
mov eax, dword [r15]
cmp dword [0x18004df9c], eax
jle 0x18000c710
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x18000c710
mov rax, qword [str.UWVSK__]
mov qword [rbp - 0x18], rax
cmp byte [0x180047adf], 0
je 0x18000c570
cmp esi, 2
jl 0x18000c537
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
mov ecx, 0x1f
movd xmm5, ecx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x18]
pxor xmm2, xmm1
movd dword [rbp - 0x18], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x14]
pxor xmm2, xmm1
movd dword [rbp - 0x14], xmm2
jmp 0x18000c575
lea r9, [rbp - 0x18]
mov r8d, ebx
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18000c540
mov ecx, 0x1f
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x70], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x78], xmm0
mov byte [rbp - 0x6c], al
mov r8d, ebx
cmp esi, 2
jl 0x18000c6a9
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, ecx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x74]
pxor xmm2, xmm1
movd dword [rbp - 0x74], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x78]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000c6c0
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x78]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r12, qword [0x18004e010]
mov eax, dword [r15]
cmp dword [0x18004e008], eax
jle 0x18000c767
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x18000c767
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004dfa8], rax
lea rcx, [0x18004e008]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004df30], eax
jle 0x18000c7b1
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x18000c7b1
mov edx, 2
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x1800266f0]
call fcn.1800250d4
lea rcx, [0x18004df30]
call fcn.180024bc0
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000c7cb
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x278], 0x25ff
mov word [rbp + 0x27c], 0
mov qword [rbp + 0x27e], r12
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x208], 0xe
lea rcx, [rbp + 0x2e8]
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x158], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18000c81c
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x208]
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x158]
call qword [rax + 0x10]
test al, al
jne 0x18000c850
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000c95e
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x210], 0xe
lea rcx, [rbp + 0x278]
mov qword [rbp + 0x1b0], rcx
mov qword [rbp + 0x1a8], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000c887
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x210]
lea r8, [rbp + 0x1b0]
lea rdx, [rbp + 0x1a8]
call qword [rax + 0x10]
test al, al
jne 0x18000c8bb
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000c95e
mov rax, qword [0x18004dfa8]
lea rdx, [rdi + 1]
mov r8d, 4
lea rcx, [rbp + 0x1f0]
call rax
mov r12, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x230], 0xe
lea rax, [rbp + 0x2e8]
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x198], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000c90f
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x230]
lea r8, [rbp + 0x1a0]
lea rdx, [rbp + 0x198]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
jne 0x18000c940
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000c95e
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r12, r12
jne 0x18000c950
mov rdi, rbx
jmp 0x18000c95e
movsxd rax, dword [rbp + 0x1f0]
add rdi, 5
add rdi, rax
mov eax, dword [r15]
cmp dword [0x18004e000], eax
jle 0x18000c9ae
lea rcx, [0x18004e000]
call fcn.180024c20
cmp dword [0x18004e000], 0xffffffff
jne 0x18000c9ae
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004df90], rax
lea rcx, [0x18004e000]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004e004], eax
jle 0x18000c9f8
lea rcx, [0x18004e004]
call fcn.180024c20
cmp dword [0x18004e004], 0xffffffff
jne 0x18000c9f8
mov edx, 2
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026700]
call fcn.1800250d4
lea rcx, [0x18004e004]
call fcn.180024bc0
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000ca12
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x288], 0x25ff
mov word [rbp + 0x28c], 0
mov qword [rbp + 0x28e], rdi
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x218], 0xe
lea rcx, [rbp + 0x2c8]
mov qword [rbp + 0x190], rcx
mov qword [rbp + 0x188], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18000ca63
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x218]
lea r8, [rbp + 0x190]
lea rdx, [rbp + 0x188]
call qword [rax + 0x10]
test al, al
jne 0x18000ca97
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000cb6d
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x240], 0xe
lea rcx, [rbp + 0x288]
mov qword [rbp + 0x150], rcx
mov qword [rbp + 0x180], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000cace
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x240]
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x180]
call qword [rax + 0x10]
test al, al
je 0x18000ca82
mov rax, qword [0x18004df90]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
lea ecx, [rdx + 0x66]
call rax
mov rdi, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x1b8], 0xe
lea rax, [rbp + 0x2c8]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x130], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000cb3d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1b8]
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x130]
call qword [rax + 0x10]
lea rcx, [0x18004df40]
test al, al
je 0x18000ca89
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test rdi, rdi
jne 0x18000cd19
lea r12d, [rdi + 4]
mov eax, dword [0x180047cd0]
mov dword [rbp - 0x28], eax
movzx eax, word [0x180047cd4]
movups xmm1, xmmword [0x180047cc0]
movups xmm0, xmmword [0x180047cb0]
mov word [rbp - 0x24], ax
movups xmmword [rbp - 0x38], xmm1
movups xmmword [rbp - 0x48], xmm0
cmp esi, 2
jl 0x18000cccf
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp - 0x48]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000cbe1
cmp eax, 0x13
jge 0x18000cd10
movsxd rax, ebx
lea r8, [rbp - 0x48]
lea r8, [r8 + rax*2]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x13
jl 0x18000cce0
lea rcx, [rbp - 0x48]
jmp 0x18000f754
mov rdx, rdi
lea rcx, [rbp + 0x200]
call fcn.18000f7a0
test al, al
jne 0x18000cec9
movups xmm0, xmmword [0x180047b98]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [0x180047ba8]
movups xmmword [rbp - 0x38], xmm1
mov eax, dword [0x180047bb8]
mov dword [rbp - 0x28], eax
cmp esi, 2
jl 0x18000ce7e
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp - 0x48]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000cd90
cmp eax, 0x12
jge 0x18000cec0
movsxd rax, ebx
lea r8, [rbp - 0x48]
lea r8, [r8 + rax*2]
nop dword [rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x12
jl 0x18000ce90
lea rcx, [rbp - 0x48]
jmp 0x18000f754
movups xmm0, xmmword [str.hJvTSVKO]
movups xmmword [rbp - 0x48], xmm0
movsd xmm1, qword [0x180047bf0]
movsd qword [rbp - 0x38], xmm1
movzx eax, word [0x180047bf8]
mov word [rbp - 0x30], ax
movzx eax, byte [0x180047bfa]
mov byte [rbp - 0x2e], al
mov r8d, ebx
mov r12d, 4
cmp esi, 2
jl 0x18000d057
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov r9d, 0x1f
movd xmm8, r9d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0x120], xmm0
lea rcx, [rbp - 0x44]
mov edx, dword [rbp + 0x120]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18000cf50
cmp r8d, 0x1b
jge 0x18000d0a6
movsxd rax, r8d
lea r9, [rbp - 0x48]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x18000d070
mov r9d, 0x1f
mov eax, dword [0x180047ac0]
mov dword [rbp + 0xe8], eax
movzx eax, byte [0x180047ac4]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp + 0xec], al
movsd qword [rbp + 0xe0], xmm0
mov r8d, ebx
cmp esi, 2
jl 0x18000d1ed
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r9d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp + 0xe0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0xe4]
pxor xmm2, xmm1
movd dword [rbp + 0xe4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0xe0]
add r9, rax
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000d200
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0xe0]
call fcn.180009e10
mov qword [0x18004d0e3], rax
mov r13, qword [r13 + 0x80]
mov r14, rdi
mov eax, dword [r15]
cmp dword [0x18004df98], eax
jle 0x18000d7e0
lea rcx, [0x18004df98]
call fcn.180024c20
cmp dword [0x18004df98], 0xffffffff
jne 0x18000d7e0
movsd xmm0, qword [0x180047c68]
movsd qword [rbp + 0xf0], xmm0
mov eax, dword [0x180047c70]
mov dword [rbp + 0xf8], eax
movzx eax, word [0x180047c74]
mov word [rbp + 0xfc], ax
movzx eax, byte [0x180047c76]
mov byte [rbp + 0xfe], al
mov r8d, ebx
mov r10d, 0x1f
cmp esi, 2
jl 0x18000d3d4
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047c68]
pxor xmm2, xmm1
movd dword [rbp + 0xf0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0xf4]
pxor xmm2, xmm1
movd dword [rbp + 0xf4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0xf0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18000d3f0
movsd xmm0, qword [0x180047bd0]
movsd qword [rbp + 0x1e0], xmm0
mov eax, dword [str._b7D]
mov dword [rbp + 0x1e8], eax
movzx eax, word [0x180047bdc]
mov word [rbp + 0x1ec], ax
movzx eax, byte [0x180047bde]
mov byte [rbp + 0x1ee], al
mov r8d, ebx
cmp esi, 2
jl 0x18000d575
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x180047bd0]
pxor xmm2, xmm1
movd dword [rbp + 0x1e0], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1e4]
pxor xmm2, xmm1
movd dword [rbp + 0x1e4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x1e0]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18000d590
mov eax, dword [0x180047a3c]
mov dword [rbp + 0x1d0], eax
movzx eax, word [0x180047a40]
mov word [rbp + 0x1d4], ax
mov byte [rbp + 0x1d0], 0x2e
xor byte [rbp + 0x1d1], 0x39
xor byte [rbp + 0x1d2], 0x3a
xor byte [rbp + 0x1d3], 0x3b
xor al, 0x3c
mov byte [rbp + 0x1d4], al
xor byte [rbp + 0x1d5], 0x3d
movsd xmm0, qword [str.VMUHWOPSn_:D]
movsd qword [rbp + 8], xmm0
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x10], eax
movzx eax, byte [0x180047ac4]
mov byte [rbp + 0x14], al
mov r8d, ebx
cmp esi, 2
jl 0x18000d73a
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp + 8], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0xc]
pxor xmm2, xmm1
movd dword [rbp + 0xc], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 8]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000d750
lea rcx, [rbp + 8]
call fcn.180009c20
mov dword [rbp + 0x1b8], ebx
lea r9, [rbp + 0x1b8]
mov r8, rax
lea rdx, [rbp + 0x1d0]
mov rcx, r13
call fcn.180012900
mov r8d, dword [rbp + 0x1b8]
lea rdx, [rbp + 0xf0]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x1e0]
mov rdx, rax
mov rcx, r13
call fcn.180012280
mov qword [0x18004df38], rax
lea rcx, [0x18004df98]
call fcn.180024bc0
mov rdi, qword [0x18004df38]
test rdi, rdi
jne 0x18000d9d8
movups xmm0, xmmword [0x1800479a0]
movups xmmword [rbp + 0x90], xmm0
movups xmm1, xmmword [0x1800479b0]
movups xmmword [rbp + 0xa0], xmm1
movups xmm0, xmmword [0x1800479c0]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x1800479d0]
movups xmmword [rbp + 0xc0], xmm1
movsd xmm0, qword [0x1800479e0]
movsd qword [rbp + 0xd0], xmm0
movzx eax, word [0x1800479e8]
mov word [rbp + 0xd8], ax
mov r8d, ebx
cmp esi, 2
jl 0x18000d981
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp + 0x90]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x20
jl 0x18000d890
cmp r8d, 0x25
jge 0x18000d9c4
movsxd rax, r8d
lea r9, [rbp + 0x90]
lea r9, [r9 + rax*2]
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, r8w
sub ax, cx
add ax, 0x38
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x25
jl 0x18000d990
lea rcx, [rbp + 0x90]
call fcn.180011ac0
mov rdi, rbx
jmp 0x18000e16e
mov dword [rbp + 0x1b8], ebx
mov eax, dword [r15]
cmp dword [0x18004df9c], eax
jle 0x18000dd11
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x18000dd11
mov rax, qword [str.UWVSK__]
mov qword [rbp - 0x10], rax
cmp byte [0x180047adf], 0
je 0x18000db70
cmp esi, 2
jl 0x18000db2d
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
mov ecx, 0x1f
movd xmm5, ecx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x10]
pxor xmm2, xmm1
movd dword [rbp - 0x10], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0xc]
pxor xmm2, xmm1
movd dword [rbp - 0xc], xmm2
jmp 0x18000db75
lea r9, [rbp - 0x10]
mov r8d, ebx
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18000db40
mov ecx, 0x1f
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x80], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rsp + 0x78], xmm0
mov byte [rbp - 0x7c], al
mov r8d, ebx
cmp esi, 2
jl 0x18000dcad
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movd xmm5, ecx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rsp + 0x78], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x7c]
pxor xmm2, xmm1
movd dword [rsp + 0x7c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000dcc0
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x78]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r12, qword [0x18004e010]
mov eax, dword [r15]
cmp dword [0x18004e008], eax
jle 0x18000dd68
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x18000dd68
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004dfa8], rax
lea rcx, [0x18004e008]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004df30], eax
jle 0x18000ddb2
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x18000ddb2
mov edx, 2
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x1800266f0]
call fcn.1800250d4
lea rcx, [0x18004df30]
call fcn.180024bc0
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000ddcc
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x298], 0x25ff
mov word [rbp + 0x29c], 0
mov qword [rbp + 0x29e], r12
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x200], 0xe
lea rcx, [rbp + 0x2f8]
mov qword [rbp + 0x130], rcx
mov qword [rbp + 0x140], rax
mov rcx, qword [r13 + 0x38]
test rcx, rcx
jne 0x18000de1d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x200]
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x140]
call qword [rax + 0x10]
test al, al
jne 0x18000de51
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000df5f
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x228], 0xe
lea rcx, [rbp + 0x298]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x170], rax
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000de88
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x228]
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x170]
call qword [rax + 0x10]
test al, al
jne 0x18000debc
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000df5f
mov rax, qword [0x18004dfa8]
lea rdx, [rdi + 1]
mov r8d, 4
lea rcx, [rbp + 0x1b8]
call rax
mov r12, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x220], 0xe
lea rax, [rbp + 0x2f8]
mov qword [rbp + 0x168], rax
mov qword [rbp + 0x160], rcx
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000df10
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x220]
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x160]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
jne 0x18000df41
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000df5f
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r12, r12
jne 0x18000df51
mov rdi, rbx
jmp 0x18000df5f
movsxd rax, dword [rbp + 0x1b8]
add rdi, 5
add rdi, rax
mov eax, dword [r15]
cmp dword [0x18004e000], eax
jle 0x18000dfaf
lea rcx, [0x18004e000]
call fcn.180024c20
cmp dword [0x18004e000], 0xffffffff
jne 0x18000dfaf
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004df90], rax
lea rcx, [0x18004e000]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004e004], eax
jle 0x18000dff9
lea rcx, [0x18004e004]
call fcn.180024c20
cmp dword [0x18004e004], 0xffffffff
jne 0x18000dff9
mov edx, 2
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026700]
call fcn.1800250d4
lea rcx, [0x18004e004]
call fcn.180024bc0
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000e013
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x2a8], 0x25ff
mov word [rbp + 0x2ac], 0
mov qword [rbp + 0x2ae], rdi
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x1d0], 0xe
lea rcx, [rbp + 0x2d8]
mov qword [rbp + 0x138], rcx
mov qword [rbp + 0x108], rax
mov rcx, qword [r13 + 0x38]
test rcx, rcx
jne 0x18000e064
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1d0]
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x108]
call qword [rax + 0x10]
test al, al
jne 0x18000e098
lea rcx, [0x18004df40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rdi, rbx
jmp 0x18000e16e
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x100], 0xe
lea rcx, [rbp + 0x2a8]
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x120], rax
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000e0cf
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x100]
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x120]
call qword [rax + 0x10]
test al, al
je 0x18000e083
mov rax, qword [0x18004df90]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
lea ecx, [rdx + 9]
call rax
mov rdi, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x1e0], 0xe
lea rax, [rbp + 0x2d8]
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xe0], rcx
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000e13e
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1e0]
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xe0]
call qword [rax + 0x10]
lea rcx, [0x18004df40]
test al, al
je 0x18000e08a
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov qword [0x18004d10d], rdi
movups xmm0, xmmword [str.uTyTLDhV257___b_3K]
movups xmmword [rbp + 0x28], xmm0
mov eax, dword [0x180047958]
mov dword [rbp + 0x38], eax
mov r13d, 4
lea r10d, [r13 + 0x1b]
cmp byte [0x18004795b], 0
je 0x18000e340
mov r8d, ebx
cmp esi, 2
jl 0x18000e2f7
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r13d
movdqa xmm7, xmmword [0x180047fe0]
movd xmm8, r10d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0x120], xmm0
lea rcx, [rbp + 0x2c]
mov edx, dword [rbp + 0x120]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18000e1f0
cmp r8d, 0x14
jge 0x18000e340
movsxd rax, r8d
lea r9, [rbp + 0x28]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x14
jl 0x18000e310
mov eax, dword [0x180047ac0]
mov dword [rbp], eax
movzx eax, byte [0x180047ac4]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp + 4], al
movsd qword [rbp - 8], xmm0
mov r8d, ebx
cmp esi, 2
jl 0x18000e475
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r13d
movd xmm5, r10d
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp - 8], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 4]
pxor xmm2, xmm1
movd dword [rbp - 4], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 8]
add r9, rax
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000e480
lea rdx, [rbp + 0x28]
lea rcx, [rbp - 8]
call fcn.180009e10
mov qword [0x18004d125], rax
movzx eax, word [0x180047c78]
mov word [rsp + 0x3c], ax
movzx eax, byte [0x180047c7a]
mov r12, qword [rsp + 0x70]
mov rdi, qword [r12 + 0x80]
mov byte [rsp + 0x3c], 0x78
xor byte [rsp + 0x3d], 0x39
xor al, 0x3a
mov byte [rsp + 0x3e], al
movzx eax, word [0x180047a38]
mov word [rsp + 0x30], ax
movzx eax, byte [0x180047a3a]
mov byte [rsp + 0x30], 0xff
xor byte [rsp + 0x31], 0x39
xor al, 0x3a
mov byte [rsp + 0x32], al
mov eax, dword [0x180047a3c]
mov dword [rsp + 0x34], eax
movzx eax, word [0x180047a40]
mov word [rsp + 0x38], ax
mov byte [rsp + 0x34], 0x2e
xor byte [rsp + 0x35], 0x39
xor byte [rsp + 0x36], 0x3a
xor byte [rsp + 0x37], 0x3b
xor al, 0x3c
mov byte [rsp + 0x38], al
xor byte [rsp + 0x39], 0x3d
mov dword [rbp + 0x1b8], ebx
lea r9, [rbp + 0x1b8]
mov r8, qword [rbp + 0x1f8]
lea rdx, [rsp + 0x34]
mov rcx, rdi
call fcn.180012900
mov r8d, dword [rbp + 0x1b8]
lea rcx, [rsp + 0x3c]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x30]
mov rdx, rax
mov rcx, rdi
call fcn.180012280
mov qword [rbp + 0x238], rax
test rax, rax
jne 0x18000e74a
movups xmm0, xmmword [0x180047a88]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [0x180047a98]
movups xmmword [rsp + 0x50], xmm1
movsd xmm0, qword [0x180047aa8]
movsd qword [rsp + 0x60], xmm0
movzx eax, word [0x180047ab0]
mov word [rsp + 0x68], ax
cmp esi, 2
jl 0x18000e6fe
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r13d
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rsp + 0x40]
nop
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000e610
cmp eax, 0x15
jge 0x18000e740
movsxd rax, ebx
lea r8, [rsp + 0x40]
lea r8, [r8 + rax*2]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x15
jl 0x18000e710
lea rcx, [rsp + 0x40]
jmp 0x18000f754
mov r13, qword [r12 + 0x80]
mov rdi, r14
mov eax, dword [r15]
cmp dword [0x18004df9c], eax
jle 0x18000eaa1
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x18000eaa1
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x70], rax
cmp byte [0x180047adf], 0
je 0x18000e8fa
cmp esi, 2
jl 0x18000e8ad
movdqa xmm4, xmmword [0x180048060]
mov ecx, 4
movd xmm6, ecx
mov edx, 0x1f
movd xmm5, edx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x70]
pxor xmm2, xmm1
movd dword [rsp + 0x70], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x74]
pxor xmm2, xmm1
movd dword [rsp + 0x74], xmm2
jmp 0x18000e902
lea r9, [rsp + 0x70]
mov r8d, ebx
mov rdi, r14
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18000e8c0
mov ecx, 4
lea edx, [rcx + 0x1b]
jmp 0x18000e905
mov ecx, 4
lea edx, [rcx + 0x1b]
mov rdi, r14
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x50], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x4c], al
mov r8d, ebx
cmp esi, 2
jl 0x18000ea38
movdqa xmm4, xmmword [0x180048060]
movd xmm6, ecx
movd xmm5, edx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
pxor xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000ea50
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x58]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [r15]
cmp dword [0x18004e008], eax
jle 0x18000eaf8
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x18000eaf8
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004dfa8], rax
lea rcx, [0x18004e008]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004df30], eax
jle 0x18000eb42
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x18000eb42
mov edx, 2
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x1800266f0]
call fcn.1800250d4
lea rcx, [0x18004df30]
call fcn.180024bc0
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000eb5c
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x2b8], 0x25ff
mov word [rbp + 0x2bc], 0
mov qword [rbp + 0x2be], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x1f8], 0xe
lea rcx, [rbp + 0x258]
mov qword [rbp + 0xe0], rcx
mov qword [rbp + 0xf0], rax
mov rcx, qword [r13 + 0x38]
test rcx, rcx
jne 0x18000ebad
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1f8]
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xf0]
call qword [rax + 0x10]
test al, al
jne 0x18000ebde
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000ecd6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x1e0], 0xe
lea rcx, [rbp + 0x2b8]
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x110], rax
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000ec15
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1e0]
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x110]
call qword [rax + 0x10]
test al, al
jne 0x18000ec46
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000ecd6
mov rax, qword [0x18004dfa8]
mov r8d, 0x65
lea rdx, [0x18004d0d0]
mov rcx, rdi
call rax
mov r14, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x100], 0xe
lea rax, [rbp + 0x258]
mov qword [rbp + 0x108], rax
mov qword [rbp + 0x138], rcx
mov rcx, qword [r13 + 0x78]
test rcx, rcx
jne 0x18000ec99
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x100]
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x138]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
jne 0x18000ecc7
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000ecd6
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r14, r14
jne 0x18000ee8a
movups xmm0, xmmword [0x180047c80]
movups xmmword [rsp + 0x40], xmm0
mov eax, dword [0x180047ca8]
movsd xmm0, qword [0x180047ca0]
movups xmm1, xmmword [0x180047c90]
mov dword [rsp + 0x68], eax
movsd qword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp esi, 2
jl 0x18000ee3e
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000ed50
cmp eax, 0x16
jge 0x18000ee80
movsxd rax, ebx
lea r8, [rsp + 0x40]
lea r8, [r8 + rax*2]
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x16
jl 0x18000ee50
lea rcx, [rsp + 0x40]
jmp 0x18000f754
mov r14, qword [r12 + 0x80]
mov eax, dword [r15]
cmp dword [0x18004df9c], eax
jle 0x18000f1d3
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x18000f1d3
mov rax, qword [str.UWVSK__]
mov qword [rbp + 0x1d8], rax
cmp byte [0x180047adf], 0
je 0x18000f030
cmp esi, 2
jl 0x18000eff4
movdqa xmm4, xmmword [0x180048060]
mov ecx, 4
movd xmm6, ecx
mov edx, 0x1f
movd xmm5, edx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1d8]
pxor xmm2, xmm1
movd dword [rbp + 0x1d8], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x1dc]
pxor xmm2, xmm1
movd dword [rbp + 0x1dc], xmm2
jmp 0x18000f038
lea r9, [rbp + 0x1d8]
mov r8d, ebx
nop
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18000f000
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x60], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x68], xmm0
mov byte [rbp - 0x5c], al
mov r8d, ebx
cmp esi, 2
jl 0x18000f16b
movdqa xmm4, xmmword [0x180048060]
movd xmm6, ecx
movd xmm5, edx
movdqa xmm2, xmmword [0x180047fb0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
mov eax, dword [0x180048040]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.VMUHWOPSn_:D]
pxor xmm2, xmm1
movd dword [rbp - 0x68], xmm2
movdqa xmm3, xmmword [0x180047fc0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x180047fe0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x180048020]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
pxor xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18000f180
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp - 0x68]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r12, qword [0x18004e010]
mov eax, dword [r15]
cmp dword [0x18004e008], eax
jle 0x18000f22a
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x18000f22a
lea rcx, [0x180027a08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18004dfa8], rax
lea rcx, [0x18004e008]
call fcn.180024bc0
mov eax, dword [r15]
cmp dword [0x18004df30], eax
jle 0x18000f274
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x18000f274
mov edx, 2
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x1800266f0]
call fcn.1800250d4
lea rcx, [0x18004df30]
call fcn.180024bc0
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18000f28e
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x268], 0x25ff
mov word [rbp + 0x26c], 0
mov qword [rbp + 0x26e], r12
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x1f8], 0xe
lea rcx, [rbp + 0x248]
mov qword [rbp + 0xe0], rcx
mov qword [rbp + 0xf0], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18000f2df
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1f8]
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xf0]
call qword [rax + 0x10]
test al, al
jne 0x18000f310
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000f40c
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x1e0], 0xe
lea rcx, [rbp + 0x268]
mov qword [rbp + 0x120], rcx
mov qword [rbp + 0x110], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000f347
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1e0]
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x110]
call qword [rax + 0x10]
test al, al
jne 0x18000f378
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000f40c
mov rax, qword [0x18004dfa8]
mov r8d, 8
lea rdx, [rbp + 0x238]
mov rcx, qword [rbp + 0x1c0]
call rax
mov r15, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x1c0], 0xe
lea rax, [rbp + 0x248]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18000f3cf
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x1c0]
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x108]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
jne 0x18000f3fd
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18000f40c
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r15, r15
jne 0x18000f5ba
movups xmm0, xmmword [0x180047a58]
movups xmmword [rsp + 0x40], xmm0
mov eax, dword [0x180047a80]
movsd xmm0, qword [0x180047a78]
movups xmm1, xmmword [0x180047a68]
mov dword [rsp + 0x68], eax
movsd qword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp esi, 2
jl 0x18000f572
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x180047fe0]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rsp + 0x40]
nop
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000f480
cmp eax, 0x16
jge 0x18000ee80
movsxd rax, ebx
lea r8, [rsp + 0x40]
lea r8, [r8 + rax*2]
nop
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x16
jl 0x18000f580
lea rcx, [rsp + 0x40]
jmp 0x18000f754
mov rax, rdi
jmp 0x18000f75c
movups xmm0, xmmword [0x180047ae0]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [0x180047af0]
movups xmmword [rbp - 0x38], xmm1
movsd xmm0, qword [0x180047b00]
movsd qword [rbp - 0x28], xmm0
cmp esi, 2
jl 0x18000f70e
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047fe0]
movd xmm8, r14d
movdqa xmm9, xmmword [0x180048010]
lea rcx, [rbp - 0x48]
nop dword [rax]
movd xmm2, ebx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rbx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add ebx, 8
mov eax, ebx
lea rcx, [rcx + 0x10]
cmp ebx, 0x10
jl 0x18000f620
cmp eax, 0x14
jge 0x18000f750
movsxd rax, ebx
lea r8, [rbp - 0x48]
lea r8, [r8 + rax*2]
nop dword [rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, bx
sub ax, cx
add ax, 0x38
xor word [r8], ax
inc ebx
lea r8, [r8 + 2]
cmp ebx, 0x14
jl 0x18000f720
lea rcx, [rbp - 0x48]
call fcn.180011ac0
movzx eax, al
mov rcx, qword [rbp + 0x308]
xor rcx, rsp
call fcn.180024a70
lea r11, [rsp + 0x450]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret