Function at 0x180019110
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call
Get system information on windows
Link many functions at runtime
Make suspicious ntquerysysteminformation call

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 - 0x58]
sub rsp, 0x130
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword [0x180050040]
xor rax, rsp
mov qword [rbp - 0x38], rax
mov r15, rdx
mov r14, rcx
xor ebx, ebx
mov dword [rsp + 0x68], ebx
mov edi, ebx
lea r9, [rsp + 0x68]
xor r8d, r8d
xor edx, edx
mov ecx, 0x40
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
cmp eax, 0xc0000004
jne 0x1800191db
nop word [rax + rax]
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov edx, dword [rsp + 0x68]
xor ecx, ecx
mov r9d, 4
mov r8d, 0x3000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdi, rax
lea r9, [rsp + 0x68]
mov r8d, dword [rsp + 0x68]
mov rdx, rax
mov ecx, 0x40
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
cmp eax, 0xc0000004
je 0x180019190
test eax, eax
js 0x18001ac39
test rdi, rdi
je 0x18001ac4f
mov r13, rbx
mov esi, ebx
cmp qword [rdi], rbx
jbe 0x180019243
mov rax, rbx
nop dword [rax]
lea rax, [rax + rax*4]
movups xmm6, xmmword [rdi + rax*8 + 0x10]
movups xmm7, xmmword [rdi + rax*8 + 0x20]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ecx, eax
movdqa xmm0, xmm6
psrldq xmm0, 8
movq rax, xmm0
cmp rax, rcx
jne 0x180019233
movq rax, xmm7
cmp rax, r15
je 0x18001923e
inc esi
mov eax, esi
cmp rax, qword [rdi]
jb 0x180019200
jmp 0x180019243
movq r13, xmm6
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test r13, r13
je 0x18001ac4f
mov qword [rbp - 0x78], rbx
mov ecx, dword [0x18008a250]
mov rax, qword gs:[0x58]
mov edx, 4
mov rsi, qword [rax + rcx*8]
add rsi, rdx
mov edi, dword [0x180050090]
movdqa xmm9, xmmword [0x18004b210]
movdqa xmm6, xmmword [0x18004b1d0]
movdqa xmm7, xmmword [0x18004b1c0]
movdqa xmm11, xmmword [0x18004b260]
movdqa xmm10, xmmword [0x18004b200]
movdqa xmm8, xmmword [0x18004b280]
mov eax, dword [rsi]
cmp dword [0x18008a298], eax
jle 0x180019574
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x180019574
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x1800193bc
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm11
movd xmm0, dword [rsp + 0x48]
xorps xmm1, xmm0
movd dword [rsp + 0x48], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm6
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm11
movd xmm0, dword [rsp + 0x4c]
xorps xmm1, xmm0
movd dword [rsp + 0x4c], xmm1
jmp 0x180019403
lea r9, [rsp + 0x48]
mov r8d, ebx
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800193d0
mov eax, dword [0x18002abd8]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp - 0x5c], al
movsd qword [rbp - 0x68], xmm0
mov r8d, ebx
cmp edi, 2
jl 0x180019507
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm11
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm1, xmm0
movd dword [rbp - 0x68], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
xorps xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180019520
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x68]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov r15, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x1800195ca
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x1800195ca
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x68], 0x25ff
mov word [rbp - 0x64], 0
mov qword [rbp - 0x62], r15
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x48], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x180019609
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x180019654
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
lea rdx, [r13 + 8]
mov r8d, 8
lea rcx, [rbp - 0x78]
call rax
mov r15, rax
mov rcx, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rax, [rbp - 0x58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x1800196b9
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test r15, r15
je 0x18001ac4f
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x18001ac4f
mov qword [rbp - 0x70], rbx
lea r12, [rax + 8]
mov eax, dword [rsi]
cmp dword [0x18008a298], eax
jle 0x1800199b4
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x1800199b4
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x180019805
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm11
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x180019843
lea r9, [rsp + 0x48]
mov r8d, ebx
nop dword [rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x180019810
mov eax, dword [0x18002abd8]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp - 0x5c], al
movsd qword [rbp - 0x68], xmm0
mov r8d, ebx
cmp edi, 2
jl 0x180019947
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm11
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm1, xmm0
movd dword [rbp - 0x68], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
xorps xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180019960
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x68]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov r15, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x180019a0a
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x180019a0a
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x68], 0x25ff
mov word [rbp - 0x64], 0
mov qword [rbp - 0x62], r15
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x180019a49
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x180019a94
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
mov r8d, 8
mov rdx, r12
lea rcx, [rbp - 0x70]
call rax
mov r15, rax
mov rcx, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rax, [rbp - 0x58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x180019af8
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test r15, r15
je 0x18001ac4f
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x18001ac4f
mov qword [rbp - 0x80], rbx
lea r12, [rax + 0x28]
mov eax, dword [rsi]
cmp dword [0x18008a298], eax
jle 0x180019df4
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x180019df4
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x180019c44
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm11
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x180019c83
lea r9, [rsp + 0x48]
mov r8d, ebx
nop dword [rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x180019c50
mov eax, dword [0x18002abd8]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp - 0x5c], al
movsd qword [rbp - 0x68], xmm0
mov r8d, ebx
cmp edi, 2
jl 0x180019d87
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm11
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm1, xmm0
movd dword [rbp - 0x68], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
xorps xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180019da0
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x68]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov r15, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x180019e4a
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x180019e4a
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x68], 0x25ff
mov word [rbp - 0x64], 0
mov qword [rbp - 0x62], r15
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x180019e89
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x180019ed4
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
mov r8d, 8
mov rdx, r12
lea rcx, [rbp - 0x80]
call rax
mov r15, rax
mov rcx, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rax, [rbp - 0x58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x180019f38
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test r15, r15
je 0x18001ac4f
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x18001ac4f
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
lea r12, [rax + 0x58]
mov eax, dword [rsi]
cmp dword [0x18008a298], eax
jle 0x18001a234
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x18001a234
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x18001a088
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm11
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x18001a0c3
lea r9, [rsp + 0x48]
mov r8d, ebx
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001a090
mov eax, dword [0x18002abd8]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp - 0x5c], al
movsd qword [rbp - 0x68], xmm0
mov r8d, ebx
cmp edi, 2
jl 0x18001a1c7
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm11
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm1, xmm0
movd dword [rbp - 0x68], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
xorps xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001a1e0
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x68]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov r15, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x18001a28a
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x18001a28a
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x68], 0x25ff
mov word [rbp - 0x64], 0
mov qword [rbp - 0x62], r15
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18001a2c9
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001a314
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
mov r8d, 0x10
mov rdx, r12
lea rcx, [rsp + 0x70]
call rax
mov r15, rax
mov rcx, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rax, [rbp - 0x58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001a379
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test r15, r15
je 0x18001ac4f
movzx eax, word [rsp + 0x70]
test ax, ax
je 0x18001ac4f
mov ecx, eax
shr rcx, 1
inc rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovb rax, rcx
mov rcx, rax
call fcn.1800276b4
mov r12, rax
movzx r8d, word [rsp + 0x70]
add r8, 2
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
movzx r13d, word [rsp + 0x70]
mov rax, qword [rsp + 0x78]
mov qword [rbp - 0x68], rax
mov ecx, dword [rsi]
cmp dword [0x18008a298], ecx
jle 0x18001a6b5
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x18001a6b5
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x18001a507
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm11
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x18001a543
lea r9, [rsp + 0x48]
mov r8d, ebx
nop
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001a510
mov eax, dword [0x18002abd8]
mov dword [rsp + 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rsp + 0x64], al
movsd qword [rsp + 0x58], xmm0
mov r8d, ebx
cmp edi, 2
jl 0x18001a64d
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm11
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x58]
add r9, rax
nop dword [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001a660
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x58]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov r15, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x18001a70b
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x18001a70b
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x58], 0x25ff
mov word [rbp - 0x54], 0
mov qword [rbp - 0x52], r15
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18001a74a
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rsp + 0x58], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001a795
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x48]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
mov r8, r13
mov rdx, qword [rbp - 0x68]
mov rcx, r12
call rax
mov r15, rax
mov rcx, qword [0x18008a2a8]
mov qword [rbp - 0x68], 0xe
lea rax, [rbp - 0x48]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001a7f5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp - 0x68]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test r15, r15
je 0x18001ac4f
mov word [rsp + 0x70], bx
mov r15, qword [rbp - 0x80]
mov eax, dword [rsi]
cmp dword [0x18008a298], eax
jle 0x18001aacf
lea rcx, [0x18008a298]
call fcn.180027290
cmp dword [0x18008a298], 0xffffffff
jne 0x18001aacf
mov rax, qword [str.UWVSK__]
mov qword [rsp + 0x48], rax
cmp edi, 2
jl 0x18001a934
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm11
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm6
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x18001a973
lea r9, [rsp + 0x48]
mov r8d, ebx
nop dword [rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001a940
mov eax, dword [0x18002abd8]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x18002abdc]
movsd xmm0, qword [str.VMUHWOPSn_:D]
mov byte [rbp - 0x5c], al
movsd qword [rbp - 0x68], xmm0
cmp edi, 2
jl 0x18001aa6b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [str.VMUHWOPSn_:D]
xorps xmm7, xmm0
movd dword [rbp - 0x68], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x64]
xorps xmm6, xmm1
movd dword [rbp - 0x64], xmm6
mov ebx, 8
movsxd rax, ebx
lea r8, [rbp - 0x68]
add r8, rax
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, bl
sub al, cl
add al, 0x38
xor byte [r8], al
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0xd
jl 0x18001aa80
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x68]
call fcn.180001f60
mov qword [0x18008a300], rax
lea rcx, [0x18008a298]
call fcn.180027224
mov rbx, qword [0x18008a300]
mov eax, dword [rsi]
cmp dword [0x18008a2f8], eax
jle 0x18001ab25
lea rcx, [0x18008a2f8]
call fcn.180027290
cmp dword [0x18008a2f8], 0xffffffff
jne 0x18001ab25
lea rcx, [0x18002a978]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, str.NtShutdownSystem
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18008a2b8], rax
lea rcx, [0x18008a2f8]
call fcn.180027224
mov dword [rbp - 0x58], 0x25ff
mov word [rbp - 0x54], 0
mov qword [rbp - 0x52], rbx
mov rax, qword [0x18008a2a8]
mov qword [rbp - 0x68], 0xe
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rax
mov rcx, qword [r14 + 0x38]
test rcx, rcx
jne 0x18001ab63
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp - 0x68]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2a8]
mov qword [rbp - 0x68], 0xe
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rax
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001abac
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp - 0x68]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
mov rax, qword [0x18008a2b8]
mov r8d, 0x10
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0x58]
call rax
mov rbx, rax
mov rcx, qword [0x18008a2a8]
mov qword [rbp - 0x68], 0xe
lea rax, [rbp - 0x48]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rcx
mov rcx, qword [r14 + 0x78]
test rcx, rcx
jne 0x18001ac10
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
lea r9, [rbp - 0x68]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x50]
call qword [rax + 0x10]
test al, al
je 0x18001ac4f
test rbx, rbx
je 0x18001ac4f
mov rcx, r12
call fcn.1800271e0
mov al, 1
jmp 0x18001ac51
test rdi, rdi
je 0x18001ac4f
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor al, al
mov rcx, qword [rbp - 0x38]
xor rcx, rsp
call fcn.1800271c0
lea r11, [rsp + 0x130]
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]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret