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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x248]
sub rsp, 0x310
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [0x18004d010]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov dword [rsp + 0x58], r8d
mov qword [rbp - 0x20], rdx
mov rdi, rcx
mov edx, dword [0x18004dec4]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rsi, qword [rax + rdx*8]
add rsi, rcx
xor ebx, ebx
lea r12d, [rbx + 4]
lea r13d, [rbx + 0x1f]
mov r15d, dword [0x18004d018]
mov eax, dword [rsi]
cmp dword [0x18004e2e8], eax
jle 0x18001f003
lea rcx, [0x18004e2e8]
call fcn.180024c20
cmp dword [0x18004e2e8], 0xffffffff
jne 0x18001f003
movups xmm0, xmmword [0x180047f10]
movups xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [0x180047f20]
movsd qword [rbp - 0x40], xmm1
mov eax, dword [0x180047f28]
mov dword [rbp - 0x38], eax
movzx eax, word [0x180047f2c]
mov word [rbp - 0x34], ax
movzx eax, byte [0x180047f2e]
mov byte [rbp - 0x32], al
mov r8d, ebx
cmp r15d, 2
jl 0x18001ee07
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp - 0x4c]
mov edx, dword [rbp + 0xa0]
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 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 0x18001ed00
cmp r8d, 0x1f
jge 0x18001ee50
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x18001ee20
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x88], eax
movzx eax, byte [0x180047ac4]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp + 0x8c], al
movsd qword [rbp + 0x80], xmm0
mov r8d, ebx
cmp r15d, 2
jl 0x18001ef98
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movd xmm5, r13d
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 [0x180047ff0]
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 + 0x80], 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 [0x180047ff0]
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 + 0x84]
pxor xmm2, xmm1
movd dword [rbp + 0x84], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x80]
add r9, rax
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001efb0
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x80]
call fcn.180009e10
mov qword [0x18004e2b8], rax
lea rcx, [0x18004e2e8]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e200], eax
jle 0x18001f370
lea rcx, [0x18004e200]
call fcn.180024c20
cmp dword [0x18004e200], 0xffffffff
jne 0x18001f370
movups xmm0, xmmword [str.jMVwSRUJ0]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [0x180047e20]
movups xmmword [rbp - 0x40], xmm1
psrldq xmm1, 0xf
movd eax, xmm1
test al, al
je 0x18001f1e0
cmp r15d, 2
jl 0x18001f1a1
movdqa xmm5, xmmword [0x180047fb0]
mov edx, ebx
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp - 0x4c]
mov r8d, dword [rbp + 0xa0]
nop word [rax + rax]
movd xmm2, edx
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, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 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, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x20
jl 0x18001f0a0
jmp 0x18001f1e0
lea r9, [rbp - 0x50]
mov r8d, ebx
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x20
jl 0x18001f1b0
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x30], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp + 0x28], xmm0
mov byte [rbp + 0x34], al
mov r8d, ebx
cmp r15d, 2
jl 0x18001f316
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movd xmm5, r13d
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 [0x180047ff0]
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 + 0x28], 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 [0x180047ff0]
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 + 0x2c]
pxor xmm2, xmm1
movd dword [rbp + 0x2c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x28]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001f320
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x28]
call fcn.180009e10
mov qword [0x18004e3c8], rax
lea rcx, [0x18004e200]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3d4], eax
jle 0x18001f726
lea rcx, [0x18004e3d4]
call fcn.180024c20
cmp dword [0x18004e3d4], 0xffffffff
jne 0x18001f726
movups xmm0, xmmword [str.AhPX_L_]
movups xmmword [rbp + 0x130], xmm0
mov eax, dword [0x180047d30]
mov dword [rbp + 0x140], eax
movzx eax, word [0x180047d34]
mov word [rbp + 0x144], ax
cmp byte [0x180047d35], 0
je 0x18001f570
mov r8d, ebx
cmp r15d, 2
jl 0x18001f527
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0x134]
mov edx, dword [rbp + 0xa0]
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 0x18001f420
cmp r8d, 0x16
jge 0x18001f570
movsxd rax, r8d
lea r9, [rbp + 0x130]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x16
jl 0x18001f540
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x88], eax
movzx eax, byte [0x180047ac4]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp + 0x8c], al
movsd qword [rbp + 0x80], xmm0
mov r8d, ebx
cmp r15d, 2
jl 0x18001f6b8
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movd xmm5, r13d
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 [0x180047ff0]
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 + 0x80], 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 [0x180047ff0]
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 + 0x84]
pxor xmm2, xmm1
movd dword [rbp + 0x84], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x80]
add r9, rax
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001f6d0
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x80]
call fcn.180009e10
mov qword [0x18004e2d8], rax
lea rcx, [0x18004e3d4]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e430], eax
jle 0x18001fa90
lea rcx, [0x18004e430]
call fcn.180024c20
cmp dword [0x18004e430], 0xffffffff
jne 0x18001fa90
movups xmm0, xmmword [0x180047de0]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [0x180047df0]
movups xmmword [rbp - 0x40], xmm1
psrldq xmm1, 0xf
movd eax, xmm1
test al, al
je 0x18001f900
cmp r15d, 2
jl 0x18001f8c1
movdqa xmm5, xmmword [0x180047fb0]
mov edx, ebx
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp - 0x4c]
mov r8d, dword [rbp + 0xa0]
nop dword [rax]
movd xmm2, edx
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, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 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, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x20
jl 0x18001f7c0
jmp 0x18001f900
lea r9, [rbp - 0x50]
mov r8d, ebx
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x20
jl 0x18001f8d0
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x30], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp + 0x28], xmm0
mov byte [rbp + 0x34], al
mov r8d, ebx
cmp r15d, 2
jl 0x18001fa36
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movd xmm5, r13d
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 [0x180047ff0]
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 + 0x28], 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 [0x180047ff0]
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 + 0x2c]
pxor xmm2, xmm1
movd dword [rbp + 0x2c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x28]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001fa40
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x28]
call fcn.180009e10
mov qword [0x18004e288], rax
lea rcx, [0x18004e430]
call fcn.180024bc0
cmp qword [0x18004e2b8], 0
je 0x180020723
cmp qword [0x18004e3c8], 0
je 0x180020723
cmp qword [0x18004e2d8], 0
je 0x180020723
cmp qword [0x18004e288], 0
je 0x180020723
mov qword [rbp + 0x48], rdi
movsd xmm0, qword [str.VMUHWOPSn_:D]
movsd qword [rbp + 0x80], xmm0
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x88], eax
movzx eax, byte [0x180047ac4]
mov byte [rbp + 0x8c], al
mov r8d, ebx
cmp r15d, 2
jl 0x18001fc14
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movd xmm5, r13d
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 [0x180047ff0]
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 + 0x80], 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 [0x180047ff0]
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 + 0x84]
pxor xmm2, xmm1
movd dword [rbp + 0x84], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x80]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001fc30
lea rcx, [rbp + 0x80]
call fcn.180009c20
mov r14, rax
movups xmm0, xmmword [str._ABCDE]
movups xmmword [rbp + 0x130], xmm0
movups xmm1, xmmword [0x180047d48]
movups xmmword [rbp + 0x140], xmm1
movsd xmm0, qword [0x180047d58]
movsd qword [rbp + 0x150], xmm0
mov ecx, dword [0x180047d60]
mov dword [rbp + 0x158], ecx
movzx ecx, byte [0x180047d64]
mov byte [rbp + 0x15c], cl
mov r8d, ebx
cmp r15d, 2
jl 0x18001fe07
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0x134]
mov edx, dword [rbp + 0xa0]
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, 0x28
jl 0x18001fd00
cmp r8d, 0x2d
jge 0x18001fe50
movsxd rax, r8d
lea r9, [rbp + 0x130]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2d
jl 0x18001fe20
mov eax, dword [0x180047dd0]
movups xmm0, xmmword [0x180047da8]
mov dword [rbp - 0x28], eax
movups xmmword [rbp - 0x50], xmm0
movzx eax, byte [0x180047dd4]
movsd xmm0, qword [0x180047dc8]
movups xmm1, xmmword [0x180047db8]
mov byte [rbp - 0x24], al
movsd qword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x40], xmm1
mov r8d, ebx
cmp r15d, 2
jl 0x18001ffd7
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r12d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp - 0x4c]
mov edx, dword [rbp + 0xa0]
nop
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, 0x28
jl 0x18001fed0
cmp r8d, 0x2d
jge 0x180020020
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2d
jl 0x18001fff0
mov eax, dword [str.hx_]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x180047994]
mov byte [rsp + 0x38], 0x50
xor byte [rsp + 0x39], 0x39
xor byte [rsp + 0x3a], 0x3a
xor byte [rsp + 0x3b], 0x3b
xor al, 0x3c
mov byte [rsp + 0x3c], al
mov dword [rsp + 0x50], ebx
lea r9, [rsp + 0x50]
mov r8, r14
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.180012900
mov r8d, dword [rsp + 0x50]
lea rcx, [rbp + 0x130]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x50]
mov rdx, rax
mov rcx, rdi
call fcn.180012280
mov r12, rax
mov ecx, dword [str._ABCDE_]
mov dword [rsp + 0x48], ecx
movzx ecx, word [0x180047ddc]
mov word [rsp + 0x4c], cx
movzx edx, byte [0x180047dde]
mov byte [rsp + 0x48], 0x78
xor byte [rsp + 0x49], 0x39
xor byte [rsp + 0x4a], 0x3a
xor byte [rsp + 0x4b], 0x3b
xor cl, 0x3c
mov byte [rsp + 0x4c], cl
xor byte [rsp + 0x4d], 0x3d
xor dl, 0x3e
mov byte [rsp + 0x4e], dl
mov eax, dword [0x180047d00]
mov dword [rsp + 0x40], eax
movzx eax, word [0x180047d04]
mov word [rsp + 0x44], ax
movzx ecx, byte [0x180047d06]
mov byte [rsp + 0x40], 0x66
xor byte [rsp + 0x41], 0x39
xor byte [rsp + 0x42], 0x3a
xor byte [rsp + 0x43], 0x3b
xor al, 0x3c
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x3d
xor cl, 0x3e
mov byte [rsp + 0x46], cl
mov eax, dword [str.hx_]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x180047994]
mov byte [rsp + 0x38], 0x50
xor byte [rsp + 0x39], 0x39
xor byte [rsp + 0x3a], 0x3a
xor byte [rsp + 0x3b], 0x3b
xor al, 0x3c
mov byte [rsp + 0x3c], al
mov dword [rsp + 0x50], ebx
lea r9, [rsp + 0x50]
mov r8, r14
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.180012900
mov r8d, dword [rsp + 0x50]
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
mov rdx, rax
mov rcx, rdi
call fcn.180012280
mov r13, rax
test r12, r12
jne 0x1800205b6
movups xmm0, xmmword [0x180047f58]
movups xmmword [rbp + 0x130], xmm0
movsd xmm1, qword [0x180047f68]
movsd qword [rbp + 0x140], xmm1
mov ecx, dword [0x180047f70]
mov dword [rbp + 0x148], ecx
movzx ecx, word [0x180047f74]
mov word [rbp + 0x14c], cx
mov r10, r14
lea r11d, [r12 + 4]
lea r12d, [r11 + 0x1b]
cmp byte [0x180047f75], 0
je 0x180020370
mov r8d, ebx
cmp r15d, 2
jl 0x180020327
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r11d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0x134]
mov edx, dword [rbp + 0xa0]
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 0x180020220
cmp r8d, 0x1e
jge 0x180020370
movsxd rax, r8d
lea r9, [rbp + 0x130]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x180020340
movups xmm0, xmmword [0x180047e70]
movups xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [0x180047e80]
movsd qword [rbp - 0x40], xmm1
mov eax, dword [str.PQRS]
mov dword [rbp - 0x38], eax
movzx eax, word [0x180047e8c]
mov word [rbp - 0x34], ax
cmp byte [0x180047e8d], 0
je 0x180020540
mov r8d, ebx
cmp r15d, 2
jl 0x1800204f9
movdqa xmm5, xmmword [0x180047fb0]
movdqa xmm4, xmmword [0x180048050]
movd xmm6, r11d
movdqa xmm7, xmmword [0x180047ff0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x180048040]
movdqa xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp - 0x4c]
mov edx, dword [rbp + 0xa0]
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 0x1800203f2
cmp r8d, 0x1e
jge 0x180020540
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x180020510
mov eax, dword [str.hx_]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x180047994]
mov byte [rsp + 0x38], 0x50
xor byte [rsp + 0x39], 0x39
xor byte [rsp + 0x3a], 0x3a
xor byte [rsp + 0x3b], 0x3b
xor al, 0x3c
mov byte [rsp + 0x3c], al
mov dword [rsp + 0x50], ebx
lea r9, [rsp + 0x50]
mov r8, r10
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.180012900
mov r8d, dword [rsp + 0x50]
lea rcx, [rbp + 0x130]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x50]
mov rdx, rax
mov rcx, rdi
call fcn.180012280
mov r12, rax
test rax, rax
je 0x180020723
add r12, 0x10
jmp 0x1800205ba
add r12, 0x1c
test r13, r13
je 0x180020723
mov qword [rbp + 0x28], rdi
mov r9d, 7
lea r8d, [r9 - 4]
mov rdx, r12
lea rcx, [rbp + 0x48]
call fcn.1800234e0
mov qword [rsp + 0x40], rax
mov r9d, 0xa
lea r8d, [r9 - 4]
mov rdx, r13
lea rcx, [rbp + 0x48]
call fcn.1800234e0
mov r12, rax
mov qword [rbp + 0x48], rax
mov r14, qword [0x18004e2b8]
mov ecx, dword [rsi]
cmp dword [0x18004e194], ecx
jle 0x180020655
lea rcx, [0x18004e194]
call fcn.180024c20
cmp dword [0x18004e194], 0xffffffff
jne 0x180020655
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 [0x18004e300], rax
lea rcx, [0x18004e194]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e2a0], eax
jle 0x18002069e
lea rcx, [0x18004e2a0]
call fcn.180024c20
cmp dword [0x18004e2a0], 0xffffffff
jne 0x18002069e
mov edx, 2
lea rcx, [0x18004e220]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026760]
call fcn.1800250d4
lea rcx, [0x18004e2a0]
call fcn.180024bc0
lea rcx, [0x18004e220]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x1800206b8
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0xf0], 0x25ff
mov word [rbp + 0xf4], 0
mov qword [rbp + 0xf6], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x58], 0xe
lea rcx, [rbp + 0x180]
mov qword [rbp + 0x10], rcx
mov qword [rbp - 0x10], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180020700
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x58]
lea r8, [rbp + 0x10]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
test al, al
jne 0x18002075e
lea rcx, [0x18004e220]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
xor al, al
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.180024a70
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [0x18004dfa0]
mov qword [rbp - 8], 0xe
lea rcx, [rbp + 0xf0]
mov qword [rbp + 0x38], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x18002078c
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp - 8]
lea r8, [rbp + 0x38]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x180020716
mov rax, qword [0x18004e300]
mov dl, 1
mov r13, qword [rsp + 0x40]
mov rcx, r13
call rax
movzx r14d, al
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 8], 0xe
lea rax, [rbp + 0x180]
mov qword [rbp + 0x40], rax
mov qword [rbp - 0x18], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800207eb
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 8]
lea r8, [rbp + 0x40]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
lea rcx, [0x18004e220]
test al, al
je 0x18002071d
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r14b, r14b
je 0x180020723
mov rdx, qword [rbp - 0x20]
cmp qword [rdx + 0x18], 0x10
jb 0x180020832
mov r8, qword [rdx]
add r8, qword [rdx + 0x10]
mov rdx, qword [rdx]
jmp 0x180020839
mov r8, qword [rdx + 0x10]
add r8, rdx
lea rcx, [rbp + 0x60]
call fcn.180023d70
nop
lea r9, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae r9, qword [rbp + 0x60]
mov r8d, dword [rsp + 0x58]
mov rdx, r12
lea rcx, [rbp + 0x28]
call fcn.180023a70
mov r12, rax
mov qword [rbp + 0x10], rax
mov r8d, dword [rsi]
test rax, rax
jne 0x180020a12
mov rbx, qword [0x18004e2d8]
cmp dword [0x18004e434], r8d
jle 0x1800208ca
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x1800208ca
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x180020913
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x180020913
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x18002092d
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180020975
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800209bd
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
cmp dword [0x18004df9c], r8d
jle 0x180020d51
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x180020d51
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x40], rax
cmp byte [0x180047adf], 0
je 0x180020bb0
cmp r15d, 2
jl 0x180020b69
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 + 0x40]
pxor xmm2, xmm1
movd dword [rsp + 0x40], 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 + 0x44]
pxor xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x180020bb8
lea r9, [rsp + 0x40]
mov r8d, ebx
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, 8
jl 0x180020b80
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x68], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x70], xmm0
mov byte [rbp - 0x64], al
mov r8d, ebx
cmp r15d, 2
jl 0x180020cec
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 - 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 [rbp - 0x6c]
pxor xmm2, xmm1
movd dword [rbp - 0x6c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x70]
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 0x180020d00
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x180020da7
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x180020da7
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x180020df0
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x180020df0
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 0x180020e0a
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x100], 0x25ff
mov word [rbp + 0x104], 0
mov qword [rbp + 0x106], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x1a0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180020e52
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x180020e7d
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
jmp 0x180020f3d
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0x100]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180020eab
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x180020e68
mov rax, qword [0x18004dfa8]
lea rdx, [r12 + 8]
mov r8d, 8
lea rcx, [rbp + 0x20]
call rax
mov r14, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rax, [rbp + 0x1a0]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180020f0a
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
je 0x180020e6f
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
test r14, r14
jne 0x1800210db
mov rbx, qword [0x18004e2d8]
mov eax, dword [rax]
cmp dword [0x18004e434], eax
jle 0x180020f93
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x180020f93
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x180020fdc
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x180020fdc
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x180020ff6
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x18002103e
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180021086
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov eax, dword [rsi]
cmp dword [0x18004df9c], eax
jle 0x180021412
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x180021412
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp byte [0x180047adf], 0
je 0x180021270
cmp r15d, 2
jl 0x180021233
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 + 0x48]
pxor xmm2, xmm1
movd dword [rsp + 0x48], 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 + 0x4c]
pxor xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x180021278
lea r9, [rsp + 0x48]
mov r8d, ebx
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 0x180021240
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rsp + 0x78], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rsp + 0x70], xmm0
mov byte [rsp + 0x7c], al
mov r8d, ebx
cmp r15d, 2
jl 0x1800213b2
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 [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
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x70]
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, 0xd
jl 0x1800213c0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x180021468
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x180021468
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x1800214b1
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x1800214b1
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 0x1800214cb
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x110], 0x25ff
mov word [rbp + 0x114], 0
mov qword [rbp + 0x116], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x1b0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180021513
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x18002153e
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
jmp 0x1800215fc
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0x110]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x18002156c
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x180021529
mov rax, qword [0x18004dfa8]
mov r8d, 8
mov rdx, r12
lea rcx, [rbp + 0x18]
call rax
mov r14, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rax, [rbp + 0x1b0]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800215c9
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
je 0x180021530
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
test r14, r14
jne 0x18002179a
mov rbx, qword [0x18004e2d8]
mov eax, dword [rax]
cmp dword [0x18004e434], eax
jle 0x180021652
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x180021652
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x18002169b
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x18002169b
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x1800216b5
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x1800216fd
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180021745
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov r12, qword [rbp + 0x20]
mov eax, dword [rsi]
cmp dword [0x18004df9c], eax
jle 0x180021ad2
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x180021ad2
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x38], rax
cmp byte [0x180047adf], 0
je 0x180021930
cmp r15d, 2
jl 0x1800218f6
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 + 0x38]
pxor xmm2, xmm1
movd dword [rsp + 0x38], 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 + 0x3c]
pxor xmm2, xmm1
movd dword [rsp + 0x3c], xmm2
jmp 0x180021938
lea r9, [rsp + 0x38]
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 0x180021900
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rsp + 0x68], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rsp + 0x60], xmm0
mov byte [rsp + 0x6c], al
mov r8d, ebx
cmp r15d, 2
jl 0x180021a72
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 [rsp + 0x60], 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 + 0x64]
pxor xmm2, xmm1
movd dword [rsp + 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x60]
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, 0xd
jl 0x180021a80
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x60]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x180021b28
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x180021b28
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x180021b71
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x180021b71
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 0x180021b8b
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x120], 0x25ff
mov word [rbp + 0x124], 0
mov qword [rbp + 0x126], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x160]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180021bd3
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x180021bfe
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rcx, rsi
jmp 0x180021cbc
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0x120]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180021c2c
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x180021be9
mov rax, qword [0x18004dfa8]
mov r8d, 8
lea rdx, [rbp + 0x18]
mov rcx, r12
call rax
mov r14, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rax, [rbp + 0x160]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180021c89
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
je 0x180021bf0
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rcx, rsi
test r14, r14
jne 0x180021e5a
mov rbx, qword [0x18004e2d8]
mov eax, dword [rcx]
cmp dword [0x18004e434], eax
jle 0x180021d12
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x180021d12
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x180021d5b
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x180021d5b
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x180021d75
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180021dbd
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180021e05
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov r12, qword [rbp + 0x18]
mov eax, dword [rsi]
cmp dword [0x18004df9c], eax
jle 0x180022191
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x180022191
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x58], rax
cmp byte [0x180047adf], 0
je 0x180021ff0
cmp r15d, 2
jl 0x180021fb6
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 + 0x58]
pxor xmm2, xmm1
movd dword [rsp + 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 [rsp + 0x5c]
pxor xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
jmp 0x180021ff8
lea r9, [rsp + 0x58]
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 0x180021fc0
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x78], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x80], xmm0
mov byte [rbp - 0x74], al
mov r8d, ebx
cmp r15d, 2
jl 0x18002212c
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 - 0x80], 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 - 0x7c]
pxor xmm2, xmm1
movd dword [rbp - 0x7c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x80]
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 0x180022140
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x80]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x1800221e7
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x1800221e7
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x180022230
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x180022230
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 0x18002224a
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0xb0], 0x25ff
mov word [rbp + 0xb4], 0
mov qword [rbp + 0xb6], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x170]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180022292
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x1800222bd
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
jmp 0x18002237d
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0xb0]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800222eb
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x1800222a8
mov rax, qword [0x18004dfa8]
mov r8d, 8
lea rdx, [rbp + 0x20]
lea rcx, [r12 + 8]
call rax
mov r14, rax
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rax, [rbp + 0x170]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x18002234a
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
test al, al
je 0x1800222af
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rax, rsi
test r14, r14
jne 0x18002251b
mov rbx, qword [0x18004e2d8]
mov eax, dword [rax]
cmp dword [0x18004e434], eax
jle 0x1800223d3
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x1800223d3
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x18002241c
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x18002241c
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x180022436
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x18002247e
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800224c6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov r14, qword [0x18004e288]
mov eax, dword [rsi]
cmp dword [0x18004e4a8], eax
jle 0x180022571
lea rcx, [0x18004e4a8]
call fcn.180024c20
cmp dword [0x18004e4a8], 0xffffffff
jne 0x180022571
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 [0x18004e208], rax
lea rcx, [0x18004e4a8]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e4ac], eax
jle 0x1800225ba
lea rcx, [0x18004e4ac]
call fcn.180024c20
cmp dword [0x18004e4ac], 0xffffffff
jne 0x1800225ba
mov edx, 2
lea rcx, [0x18004e3e0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026720]
call fcn.1800250d4
lea rcx, [0x18004e4ac]
call fcn.180024bc0
lea rcx, [0x18004e3e0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x1800225d4
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0xc0], 0x25ff
mov word [rbp + 0xc4], 0
mov qword [rbp + 0xc6], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x1c0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x18002261c
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x180022644
lea rcx, [0x18004e3e0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18002270e
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0xc0]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180022672
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
jne 0x180022697
lea rcx, [0x18004e3e0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18002270e
mov rdx, qword [rbp + 0x10]
mov r12, qword [rbp + 0x48]
mov rcx, r12
call qword [0x18004e208]
movzx r14d, al
mov rcx, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rax, [rbp + 0x1c0]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rcx
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800226da
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004e3e0]
test al, al
jne 0x1800226ff
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x18002270e
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test r14b, r14b
jne 0x1800228ca
mov rbx, qword [0x18004e2d8]
mov eax, dword [rsi]
cmp dword [0x18004e434], eax
jle 0x180022764
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x180022764
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x1800227ad
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x1800227ad
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x1800227c7
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x80], 0x25ff
mov word [rbp + 0x84], 0
mov qword [rbp + 0x86], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x18002280f
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180022857
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800228b6
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800228a4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
xor bl, bl
jmp 0x180023494
mov dword [rbp + 0x50], ebx
mov eax, dword [rsi]
cmp dword [0x18004df9c], eax
jle 0x180022c01
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x180022c01
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x50], rax
cmp byte [0x180047adf], 0
je 0x180022a60
cmp r15d, 2
jl 0x180022a25
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 + 0x50]
pxor xmm2, xmm1
movd dword [rsp + 0x50], 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 + 0x54]
pxor xmm2, xmm1
movd dword [rsp + 0x54], xmm2
jmp 0x180022a68
lea r9, [rsp + 0x50]
mov r8d, ebx
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, 8
jl 0x180022a30
mov edx, 0x1f
lea ecx, [rdx - 0x1b]
mov eax, dword [0x180047ac0]
mov dword [rbp - 0x58], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp - 0x60], xmm0
mov byte [rbp - 0x54], al
mov r8d, ebx
cmp r15d, 2
jl 0x180022b9c
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 - 0x60], 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 - 0x5c]
pxor xmm2, xmm1
movd dword [rbp - 0x5c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x60]
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 0x180022bb0
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x60]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov r14, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x180022c57
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x180022c57
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x180022ca0
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x180022ca0
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 0x180022cba
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0xd0], 0x25ff
mov word [rbp + 0xd4], 0
mov qword [rbp + 0xd6], r14
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x190]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180022d02
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
jne 0x180022d30
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov r14d, 4
jmp 0x180022dd9
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0xd0]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180022d5e
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x180022d18
lea rdx, [r12 + 0x40]
mov r14d, 4
mov r8d, r14d
lea rcx, [rbp + 0x50]
call qword [0x18004dfa8]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rcx, [rbp + 0x190]
mov qword [rbp - 8], rcx
mov qword [rbp - 0x10], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180022dba
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov eax, dword [rbp + 0x50]
test eax, eax
je 0x1800232dd
dec eax
mov dword [rbp + 0x50], eax
mov eax, dword [rsi]
cmp dword [0x18004df9c], eax
jle 0x18002311f
lea rcx, [0x18004df9c]
call fcn.180024c20
cmp dword [0x18004df9c], 0xffffffff
jne 0x18002311f
mov rax, qword [str.UWVSK__]
mov qword [rbp + 0x48], rax
cmp byte [0x180047adf], 0
je 0x180022f70
cmp r15d, 2
jl 0x180022f38
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r14d
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 + 0x48]
pxor xmm2, xmm1
movd dword [rbp + 0x48], 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 + 0x4c]
pxor xmm2, xmm1
movd dword [rbp + 0x4c], xmm2
jmp 0x180022f75
lea r9, [rbp + 0x48]
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 0x180022f40
mov ecx, 0x1f
mov eax, dword [0x180047ac0]
mov dword [rbp + 0x88], eax
movsd xmm0, qword [str.VMUHWOPSn_:D]
movzx eax, byte [0x180047ac4]
movsd qword [rbp + 0x80], xmm0
mov byte [rbp + 0x8c], al
cmp r15d, 2
jl 0x1800230b8
movdqa xmm4, xmmword [0x180048060]
movd xmm6, r14d
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 + 0x80], 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 + 0x84]
pxor xmm2, xmm1
movd dword [rbp + 0x84], xmm2
mov ebx, 8
movsxd rax, ebx
lea r8, [rbp + 0x80]
add r8, rax
nop word [rax + rax]
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, bl
sub al, cl
add al, 0x38
xor byte [r8], al
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0xd
jl 0x1800230d0
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x80]
call fcn.180009e10
mov qword [0x18004e010], rax
lea rcx, [0x18004df9c]
call fcn.180024bc0
mov rbx, qword [0x18004e010]
mov eax, dword [rsi]
cmp dword [0x18004e008], eax
jle 0x180023175
lea rcx, [0x18004e008]
call fcn.180024c20
cmp dword [0x18004e008], 0xffffffff
jne 0x180023175
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 [rsi]
cmp dword [0x18004df30], eax
jle 0x1800231be
lea rcx, [0x18004df30]
call fcn.180024c20
cmp dword [0x18004df30], 0xffffffff
jne 0x1800231be
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 0x1800231d8
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0xe0], 0x25ff
mov word [rbp + 0xe4], 0
mov qword [rbp + 0xe6], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x130]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x180023220
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x1800232d0
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x40], 0xe
lea rcx, [rbp + 0xe0]
mov qword [rbp + 8], rcx
mov qword [rbp], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180023268
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x40]
lea r8, [rbp + 8]
lea rdx, [rbp]
call qword [rax + 0x10]
test al, al
je 0x1800232d0
lea rcx, [r12 + 0x40]
mov r8, r14
lea rdx, [rbp + 0x50]
call qword [0x18004dfa8]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x38], 0xe
lea rcx, [rbp + 0x130]
mov qword [rbp - 8], rcx
mov qword [rbp - 0x10], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x1800232be
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x38]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x10]
call qword [rax + 0x10]
lea rcx, [0x18004dfb0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rbx, qword [0x18004e2d8]
mov eax, dword [rsi]
cmp dword [0x18004e434], eax
jle 0x180023333
lea rcx, [0x18004e434]
call fcn.180024c20
cmp dword [0x18004e434], 0xffffffff
jne 0x180023333
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 [0x18004e440], rax
lea rcx, [0x18004e434]
call fcn.180024bc0
mov eax, dword [rsi]
cmp dword [0x18004e3c0], eax
jle 0x18002337c
lea rcx, [0x18004e3c0]
call fcn.180024c20
cmp dword [0x18004e3c0], 0xffffffff
jne 0x18002337c
mov edx, 2
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_init_in_situ]
lea rcx, [0x180026750]
call fcn.1800250d4
lea rcx, [0x18004e3c0]
call fcn.180024bc0
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x180023396
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov dword [rbp + 0x90], 0x25ff
mov word [rbp + 0x94], 0
mov qword [rbp + 0x96], rbx
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0xa0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x38]
test rcx, rcx
jne 0x1800233de
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x180023485
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0x90]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180023426
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
test al, al
je 0x180023485
mov rcx, r13
call qword [0x18004e440]
mov rax, qword [0x18004dfa0]
mov qword [rbp + 0x28], 0xe
lea rcx, [rbp + 0xa0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rcx, qword [rdi + 0x78]
test rcx, rcx
jne 0x180023473
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp + 0x28]
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
lea rcx, [0x18004e1b0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov bl, 1
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x1800234d7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800234d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800234d2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180024a90
movzx eax, bl
jmp 0x180020725