Function at 0x140026240
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1f8]
sub rsp, 0x2c0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x140037040]
xor rax, rsp
mov qword [rbp + 0x118], rax
mov rsi, rdx
mov qword [rbp + 0x40], rdx
mov rdi, rcx
mov qword [rbp - 0x70], rcx
mov qword [rcx], rdx
mov r8, qword [rcx + 0x18]
sub r8, qword [rcx + 0x10]
movabs r10, 0x4924924924924925
mov rax, r10
imul r8
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rax, rdx
sub eax, 1
movsxd r9, eax
mov qword [rbp + 0x48], r9
js 0x140027930
xorps xmm12, xmm12
movss xmm14, dword [0x1400329a0]
movss xmm15, dword [0x140032934]
mov r8, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
sub rcx, r8
mov rax, r10
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r9
jbe 0x140027992
imul rbx, r9, 0x38
add rbx, r8
movsd xmm0, qword [rbx]
movsd qword [rbp + 0xe0], xmm0
mov eax, dword [rbx + 8]
mov dword [rbp + 0xe8], eax
movss xmm0, dword [rbx + 0xc]
movss dword [rbp + 0xec], xmm0
lea rdx, [rbx + 0x10]
lea rcx, [rbp + 0xf0]
call fcn.14002c230
movzx r15d, byte [rbx + 0x30]
mov byte [rbp + 0x110], r15b
movzx eax, byte [rbx + 0x31]
mov byte [rsp + 0x60], al
mov byte [rbp + 0x111], al
movzx r13d, word [rbx + 0x32]
mov word [rbp + 0x112], r13w
movzx eax, word [rbx + 0x34]
mov word [rbp - 0x38], ax
mov word [rbp + 0x114], ax
movss xmm13, dword [rbp + 0xec]
ucomiss xmm13, xmm12
jp 0x140026407
jne 0x140026407
mov rdx, qword [rbp + 0x108]
cmp rdx, 7
jbe 0x14002790c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400263fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027929
call fcn.14002fa30
jmp 0x14002790c
movss xmm8, dword [rbp + 0xe8]
movaps xmm1, xmm8
mulss xmm1, dword [rsi + 0x2c]
movss xmm9, dword [rbp + 0xe4]
movaps xmm0, xmm9
mulss xmm0, dword [rsi + 0x1c]
movss xmm10, dword [rbp + 0xe0]
movaps xmm2, xmm10
mulss xmm2, dword [rsi + 0xc]
addss xmm2, xmm0
addss xmm2, xmm1
addss xmm2, dword [rsi + 0x3c]
movss xmm0, dword [0x1400328e4]
comiss xmm0, xmm2
jbe 0x14002645d
movaps xmm11, xmm0
jmp 0x14002646b
movss xmm11, dword [0x140032930]
minss xmm11, xmm2
mov r12, qword [rbp + 0x108]
mov rsi, qword [rbp + 0x100]
mov r14, qword [rbp + 0xf0]
cmp r13w, 0xc
je 0x14002681c
cmp r13w, 0x19
jne 0x140026644
movups xmm3, xmmword [str.vW_Q__I_]
movups xmmword [rbp + 0x20], xmm3
pextrw eax, xmm3, 7
test ax, ax
je 0x1400265d4
cmp dword [reloc.d2d1.dll_Ordinal_1], 2
jl 0x140026597
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm2, xmmword [0x140032a30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x140032a70]
movq xmm1, xmm3
xorps xmm2, xmm1
movq qword [rbp + 0x20], xmm2
movdqa xmm3, xmmword [0x140032a40]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x140032a70]
movq xmm0, qword [rbp + 0x28]
xorps xmm2, xmm0
movq qword [rbp + 0x28], xmm2
jmp 0x1400265d4
lea r9, [rbp + 0x20]
xor r8d, r8d
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 8
jl 0x1400265a0
lea rax, [rbp + 0x20]
mov r10, 0xffffffffffffffff
nop
inc r10
cmp word [rax + r10*2], 0
jne 0x1400265e0
lea rbx, [rbp + 0xf0]
cmp r12, 7
cmova rbx, r14
cmp r10, rsi
ja 0x140026644
mov rax, rsi
sub rax, r10
test r10, r10
je 0x14002681c
lea rdi, [rbx + 2]
lea rdi, [rdi + rax*2]
mov rcx, rbx
movzx r11d, word [rbp + 0x20]
nop
mov rax, rdi
sub rax, rcx
sar rax, 1
je 0x140026644
nop dword [rax + rax]
cmp word [rcx], r11w
je 0x1400267ca
add rcx, 2
sub rax, 1
jne 0x140026630
cmp r13w, 7
jne 0x140026ae2
movaps xmm0, xmmword [0x140032b80]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0x60], xmm1
movss dword [rbp + 0x68], xmm8
lea r10, [rbp + 0xf0]
cmp r12, 7
cmova r10, r14
movups xmm0, xmmword [0x140031898]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x1400318a8]
movups xmmword [rbp - 0x20], xmm1
pextrw eax, xmm1, 7
test ax, ax
je 0x140026aa4
cmp dword [reloc.d2d1.dll_Ordinal_1], 2
jl 0x140026a65
movdqa xmm5, xmmword [0x140032a30]
xor edx, edx
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a50]
movdqa xmm7, xmmword [0x140032a70]
lea rcx, [rbp - 0x30]
nop dword [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add edx, 8
lea rcx, [rcx + 0x10]
cmp edx, 0x10
jl 0x1400266e0
jmp 0x140026aa4
test rcx, rcx
je 0x140026644
mov r8, r10
lea rdx, [rbp + 0x20]
test r10, r10
je 0x140026808
lea rax, [rbp + 0x20]
mov r9, rcx
sub r9, rax
nop dword [rax]
movzx eax, word [rdx]
cmp word [rdx + r9], ax
jne 0x140026a5c
add rdx, 2
sub r8, 1
jne 0x1400267f0
sub rcx, rbx
sar rcx, 1
cmp rcx, 0xffffffffffffffff
je 0x140026644
mov rdi, qword [rbp - 0x70]
test r15b, r15b
je 0x140026644
movaps xmm0, xmmword [0x140032b70]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0x50], xmm1
movss dword [rbp + 0x58], xmm8
movaps xmm7, xmm14
divss xmm7, xmm11
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.14001ee00
movaps xmm9, xmm7
addss xmm9, dword [rax + 4]
movss xmm8, dword [rax]
addss xmm8, xmm12
lea r10, [rbp + 0xf0]
cmp r12, 7
cmova r10, r14
movups xmm10, xmmword [0x140031828]
movups xmmword [rbp - 0x30], xmm10
movsd xmm0, qword [0x140031838]
movsd qword [rbp - 0x20], xmm0
mov eax, dword [0x140031840]
mov dword [rbp - 0x18], eax
cmp word [0x140031842], 0
je 0x1400269f4
xor r8d, r8d
cmp dword [reloc.d2d1.dll_Ordinal_1], 2
jl 0x1400269b3
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a70]
movdqa xmm2, xmmword [0x140032a30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm1, xmm10
xorps xmm3, xmm1
movq qword [rbp - 0x30], xmm3
movdqa xmm2, xmmword [0x140032a40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm0, qword [rbp - 0x28]
xorps xmm3, xmm0
movq qword [rbp - 0x28], xmm3
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x30]
lea r9, [r9 + rax*2]
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0xe
jl 0x1400269c0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
movsd qword [rsp + 0x48], xmm0
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x38], r10
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
movaps xmm3, xmm7
movd r9d, xmm3
mov r8d, 3
movaps xmm0, xmm8
unpcklps xmm0, xmm9
movq rdx, xmm0
mov rcx, qword [rdi + 8]
call fcn.140002e30
mov r12, qword [rbp + 0x108]
mov r14, qword [rbp + 0xf0]
jmp 0x1400278d1
add rcx, 2
jmp 0x140026620
lea r9, [rbp - 0x30]
xor r8d, r8d
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x10
jl 0x140026a70
movaps xmm6, xmm14
divss xmm6, xmm11
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0xb8]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14001ee00
movaps xmm2, xmm6
addss xmm2, dword [rax + 4]
movss xmm1, dword [rax]
addss xmm1, xmm12
unpcklps xmm1, xmm2
movq rdx, xmm1
jmp 0x140026e5c
cmp r13w, 0x10
jne 0x140026ec7
movups xmm0, xmmword [0x140031de8]
movups xmmword [rbp - 0x68], xmm0
mov ecx, dword [0x140031df8]
mov dword [rbp - 0x58], ecx
movzx eax, word [0x140031dfc]
mov edx, 0x4a
mov word [rbp - 0x68], dx
xor word [rbp - 0x66], 0x36
xor word [rbp - 0x64], 0x37
xor word [rbp - 0x62], 0x38
xor word [rbp - 0x60], 0x39
xor word [rbp - 0x5e], 0x3a
xor word [rbp - 0x5c], 0x3b
xor word [rbp - 0x5a], 0x3c
xor cx, 0x3d
mov word [rbp - 0x58], cx
xor word [rbp - 0x56], 0x3e
xor ax, 0x3f
mov word [rbp - 0x54], ax
lea rcx, [rbp - 0x68]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140026b54
lea r8, [rbp + 0xf0]
cmp r12, 7
seta r9b
cmova r8, r14
cmp rsi, rax
jne 0x140026ba9
mov rdx, rsi
lea rcx, [rbp - 0x68]
test rsi, rsi
je 0x140026c58
lea rax, [rbp - 0x68]
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x140026ba9
add rcx, 2
sub rdx, 1
jne 0x140026b90
jmp 0x140026c58
movups xmm0, xmmword [str.vVQWIZK]
movzx eax, word [0x140031b78]
movups xmmword [rsp + 0x68], xmm0
mov ecx, 0x43
mov word [rsp + 0x68], cx
xor word [rsp + 0x6a], 0x36
xor word [rsp + 0x6c], 0x37
xor word [rsp + 0x6e], 0x38
xor word [rsp + 0x70], 0x39
xor word [rsp + 0x72], 0x3a
xor word [rsp + 0x74], 0x3b
xor word [rsp + 0x76], 0x3c
xor ax, 0x3d
mov word [rsp + 0x78], ax
lea rcx, [rsp + 0x68]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140026c05
lea r8, [rbp + 0xf0]
test r9b, r9b
cmovne r8, r14
cmp rsi, rax
jne 0x140026ee0
mov rdx, rsi
lea rcx, [rsp + 0x68]
test rsi, rsi
je 0x140026c58
lea rax, [rsp + 0x68]
sub r8, rax
nop dword [rax + rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x140026ee0
add rcx, 2
sub rdx, 1
jne 0x140026c40
movaps xmm0, xmmword [0x140032b60]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0x70], xmm1
movss dword [rbp + 0x78], xmm8
movaps xmm6, xmm14
divss xmm6, xmm11
lea r8, [rbp + 0x70]
lea rdx, [rbp + 0xc0]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14001ee00
movaps xmm7, xmm6
addss xmm7, dword [rax + 4]
movss xmm5, dword [rax]
addss xmm5, xmm12
lea r10, [rbp + 0xf0]
test r9b, r9b
cmovne r10, r14
movups xmm0, xmmword [0x140031898]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x1400318a8]
movups xmmword [rbp - 0x20], xmm1
pextrw eax, xmm1, 7
test ax, ax
je 0x140026e54
cmp dword [reloc.d2d1.dll_Ordinal_1], 2
jl 0x140026e0d
movdqa xmm8, xmmword [0x140032a30]
xor edx, edx
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm9, xmmword [0x140032a50]
movdqa xmm10, xmmword [0x140032a70]
lea rcx, [rbp - 0x30]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm8
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm10
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm8
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm10
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add edx, 8
lea rcx, [rcx + 0x10]
cmp edx, 0x10
jl 0x140026d20
jmp 0x140026e54
lea r9, [rbp - 0x30]
xor r8d, r8d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x10
jl 0x140026e20
unpcklps xmm5, xmm7
movq rdx, xmm5
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
movsd qword [rsp + 0x50], xmm0
lea rcx, [0x14003162c]
mov qword [rsp + 0x48], rcx
movzx eax, byte [rsp + 0x60]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r10
movaps xmm3, xmm6
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
movd r9d, xmm3
mov r8d, 3
mov rcx, qword [rdi + 8]
call fcn.140002e30
mov r12, qword [rbp + 0x108]
mov r14, qword [rbp + 0xf0]
jmp 0x1400278d1
lea eax, [r13 - 0x27]
mov ecx, 0xfffc
test cx, ax
jne 0x140026ee0
cmp r13w, 0x29
jne 0x1400272c3
movups xmm7, xmmword [str.rDRVX_]
movups xmmword [rbp + 0x30], xmm7
pextrw eax, xmm7, 7
test ax, ax
je 0x140027024
cmp dword [reloc.d2d1.dll_Ordinal_1], 2
jl 0x140026fe9
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a70]
movdqa xmm2, xmmword [0x140032a30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm1, xmm7
xorps xmm3, xmm1
movq qword [rbp + 0x30], xmm3
movdqa xmm2, xmmword [0x140032a40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm0, qword [rbp + 0x38]
xorps xmm3, xmm0
movq qword [rbp + 0x38], xmm3
jmp 0x140027024
lea r9, [rbp + 0x30]
xor r8d, r8d
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 8
jl 0x140026ff0
lea rax, [rbp + 0x30]
mov r10, 0xffffffffffffffff
nop
inc r10
cmp word [rax + r10*2], 0
jne 0x140027030
lea rbx, [rbp + 0xf0]
cmp r12, 7
seta r15b
cmova rbx, r14
cmp r10, rsi
ja 0x1400270e8
mov rax, rsi
sub rax, r10
test r10, r10
je 0x1400272c3
lea rdi, [rbx + 2]
lea rdi, [rdi + rax*2]
mov rcx, rbx
movzx r11d, word [rbp + 0x30]
nop word [rax + rax]
mov rax, rdi
sub rax, rcx
sar rax, 1
je 0x1400270e8
nop dword [rax + rax]
cmp word [rcx], r11w
je 0x1400270a2
add rcx, 2
sub rax, 1
jne 0x140027090
jmp 0x1400270e8
test rcx, rcx
je 0x1400270e8
mov r8, r10
lea rdx, [rbp + 0x30]
test r10, r10
je 0x1400270d8
lea rax, [rbp + 0x30]
mov r9, rcx
sub r9, rax
nop dword [rax]
movzx eax, word [rdx]
cmp word [rdx + r9], ax
jne 0x1400272ba
add rdx, 2
sub r8, 1
jne 0x1400270c0
sub rcx, rbx
sar rcx, 1
cmp rcx, 0xffffffffffffffff
jne 0x1400272c3
mov eax, dword [0x140031f40]
mov dword [rbp + 0x18], eax
movups xmm7, xmmword [0x140031f28]
movsd xmm0, qword [0x140031f38]
movzx eax, word [0x140031f44]
movups xmmword [rbp], xmm7
movsd qword [rbp + 0x10], xmm0
mov word [rbp + 0x1c], ax
xor r8d, r8d
mov r11d, dword [reloc.d2d1.dll_Ordinal_1]
cmp r11d, 2
jl 0x14002720f
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a70]
movdqa xmm2, xmmword [0x140032a30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm1, xmm7
xorps xmm3, xmm1
movq qword [rbp], xmm3
movdqa xmm2, xmmword [0x140032a40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140032a50]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm0, qword [rbp + 8]
xorps xmm3, xmm0
movq qword [rbp + 8], xmm3
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0xf
jl 0x140027220
lea rcx, [rbp]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x140027260
lea r8, [rbp + 0xf0]
test r15b, r15b
cmovne r8, r14
cmp rsi, rax
jne 0x1400274ed
mov rdx, rsi
lea rcx, [rbp]
test rsi, rsi
je 0x1400272ca
lea rax, [rbp]
sub r8, rax
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x1400274ed
add rcx, 2
sub rdx, 1
jne 0x1400272a0
jmp 0x1400272ca
add rcx, 2
jmp 0x140027080
mov r11d, dword [reloc.d2d1.dll_Ordinal_1]
movups xmm0, xmmword [0x140031580]
movdqa xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0x80], xmm1
movss dword [rbp + 0x88], xmm8
movups xmm0, xmmword [0x140031898]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x1400318a8]
movups xmmword [rbp - 0x20], xmm1
pextrw eax, xmm1, 7
test ax, ax
je 0x140027474
cmp r11d, 2
jl 0x140027437
movdqa xmm5, xmmword [0x140032a30]
xor edx, edx
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a50]
movdqa xmm7, xmmword [0x140032a70]
lea rcx, [rbp - 0x30]
nop dword [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add edx, 8
lea rcx, [rcx + 0x10]
cmp edx, 0x10
jl 0x140027350
jmp 0x140027474
lea r9, [rbp - 0x30]
xor r8d, r8d
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x10
jl 0x140027440
lea r9, [rbp + 0xf0]
cmp r12, 7
cmova r9, r14
movaps xmm6, xmm14
divss xmm6, xmm11
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0xc8]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14001ee00
addss xmm6, dword [rax + 4]
movss xmm1, dword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
movzx eax, byte [rsp + 0x60]
movsd qword [rsp + 0x50], xmm0
lea rcx, [0x14003162c]
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r9
addss xmm1, xmm12
movaps xmm3, xmm15
unpcklps xmm1, xmm6
movq rdx, xmm1
jmp 0x140026e87
cmp word [rbp - 0x38], 3
jae 0x1400276c1
sub r13w, 0xa
cmp r13w, 1
jbe 0x1400276c1
movsd xmm0, qword [str.wD_RI_]
movsd qword [rbp - 0x80], xmm0
mov ecx, dword [0x140031f80]
mov dword [rbp - 0x78], ecx
movzx eax, word [0x140031f84]
mov edx, 0x42
mov word [rbp - 0x80], dx
xor word [rbp - 0x7e], 0x36
xor word [rbp - 0x7c], 0x37
xor word [rbp - 0x7a], 0x38
xor cx, 0x39
mov word [rbp - 0x78], cx
xor word [rbp - 0x76], 0x3a
xor ax, 0x3b
mov word [rbp - 0x74], ax
lea rcx, [rbp - 0x80]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140027560
lea rdx, [rbp + 0xf0]
test r15b, r15b
cmovne rdx, r14
cmp rsi, rax
jne 0x1400278cd
lea rcx, [rbp - 0x80]
test rsi, rsi
je 0x1400275b0
lea rax, [rbp - 0x80]
sub rdx, rax
movzx eax, word [rcx]
cmp word [rcx + rdx], ax
jne 0x1400278cd
add rcx, 2
sub rsi, 1
jne 0x140027591
nop dword [rax + rax]
movaps xmm0, xmmword [0x140032bd0]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0x90], xmm1
movss dword [rbp + 0x98], xmm8
lea rcx, [rbp + 0xf0]
movups xmm0, xmmword [0x140032678]
movzx eax, word [0x140032688]
movups xmmword [rbp - 0x50], xmm0
test r15b, r15b
jne 0x1400275fd
mov r14, rcx
mov ecx, 0x25
mov word [rbp - 0x50], cx
xor word [rbp - 0x4e], 0x36
xor word [rbp - 0x4c], 0x37
xor word [rbp - 0x4a], 0x38
xor word [rbp - 0x48], 0x39
xor word [rbp - 0x46], 0x3a
xor word [rbp - 0x44], 0x3b
xor word [rbp - 0x42], 0x3c
xor ax, 0x3d
mov word [rbp - 0x40], ax
movaps xmm6, xmm14
divss xmm6, xmm11
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0xd0]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14001ee00
addss xmm6, dword [rax + 4]
movss xmm1, dword [rax]
addss xmm1, xmm12
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
movsd qword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], r14
lea rax, [rbp - 0x50]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
movaps xmm3, xmm15
movd r9d, xmm3
mov r8d, 3
unpcklps xmm1, xmm6
movq rdx, xmm1
mov rcx, qword [rdi + 8]
call fcn.140002e30
mov r12, qword [rbp + 0x108]
mov r14, qword [rbp + 0xf0]
jmp 0x1400278d1
movaps xmm0, xmmword [0x140032bd0]
movaps xmmword [rbp - 0x10], xmm0
movaps xmm1, xmm10
unpcklps xmm1, xmm9
movsd qword [rbp + 0xe0], xmm1
movsd qword [rbp + 0xa0], xmm1
movss dword [rbp + 0xa8], xmm8
lea r10, [rbp + 0xf0]
test r15b, r15b
cmovne r10, r14
movups xmm0, xmmword [0x140031898]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [0x1400318a8]
movups xmmword [rbp - 0x20], xmm1
pextrw eax, xmm1, 7
test ax, ax
je 0x140027874
cmp r11d, 2
jl 0x140027837
movdqa xmm5, xmmword [0x140032a30]
xor edx, edx
movdqa xmm4, xmmword [0x140032bf0]
movdqa xmm6, xmmword [0x140032a50]
movdqa xmm7, xmmword [0x140032a70]
lea rcx, [rbp - 0x30]
nop
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add edx, 8
lea rcx, [rcx + 0x10]
cmp edx, 0x10
jl 0x140027750
jmp 0x140027874
lea r9, [rbp - 0x30]
xor r8d, r8d
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x10
jl 0x140027840
movaps xmm6, xmm14
divss xmm6, xmm11
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xd8]
mov rdi, qword [rbp - 0x70]
mov rcx, rdi
call fcn.14001ee00
addss xmm6, dword [rax + 4]
movss xmm1, dword [rax]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm13
movzx eax, byte [rsp + 0x60]
movsd qword [rsp + 0x50], xmm0
lea rcx, [0x14003162c]
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r10
jmp 0x1400274d7
mov rdi, qword [rbp - 0x70]
cmp r12, 7
jbe 0x140027908
lea rdx, [r12*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x140027900
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027929
mov rcx, r14
call fcn.14002fa30
mov rsi, qword [rbp + 0x40]
mov r9, qword [rbp + 0x48]
sub r9, 1
mov qword [rbp + 0x48], r9
js 0x140027930
movabs r10, 0x4924924924924925
jmp 0x140026310
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, qword [rbp + 0x118]
xor rcx, rsp
call fcn.14002fa10
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x50]
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]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14002c620
int3