Function at 0x180032820
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rdi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xb8
movzx eax, byte [0x1800e7088]
xorps xmm0, xmm0
mov edi, dword [0x18010a088]
xor r8d, r8d
movaps xmmword [rsp + 0xa0], xmm6
mov qword [rbp - 9], 0
mov byte [rbp + 0xf], al
movdqu xmmword [rbp - 0x19], xmm0
movups xmm0, xmmword [0x1800e7078]
movups xmmword [rbp - 1], xmm0
cmp edi, 2
jl 0x1800329a7
movdqa xmm0, xmmword [0x1800f8e40]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800f8c90]
movdqa xmm4, xmmword [0x1800f8f00]
movdqa xmm6, xmmword [0x1800f8d00]
movdqa xmmword [rbp - 0x59], xmm0
mov edx, dword [rbp - 0x59]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, 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 xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x1800328a0
cmp r8d, 0x11
jge 0x1800329e2
movsxd rax, r8d
lea r9, [rbp - 1]
add r9, rax
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x1800329b1
xorps xmm0, xmm0
lea rax, [rbp - 1]
xorps xmm1, xmm1
mov r15, 0xffffffffffffffff
movups xmmword [rbp - 0x39], xmm0
mov r8, r15
movdqu xmmword [rbp - 0x29], xmm1
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180032a00
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e81e7], 0
movups xmm0, xmmword [0x1800e81d0]
movups xmmword [rbp - 1], xmm0
movsd xmm0, qword [str.___8__Nq]
movsd qword [rbp + 0xf], xmm0
je 0x180032bc1
cmp edi, 2
jl 0x180032b81
movdqa xmm0, xmmword [0x1800f8e40]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800f8c90]
xor edx, edx
movdqa xmm4, xmmword [0x1800f8f00]
movdqa xmm6, xmmword [0x1800f8d00]
movdqa xmmword [rbp - 0x59], xmm0
mov r8d, dword [rbp - 0x59]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add edx, 8
pmuldq xmm1, 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 xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, r8d
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp edx, 0x18
jl 0x180032a80
jmp 0x180032bc1
lea r9, [rbp - 1]
xor r8d, r8d
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x18
jl 0x180032b90
xorps xmm0, xmm0
lea rax, [rbp - 1]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 0x59], xmm0
movdqu xmmword [rbp - 0x49], xmm1
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180032be0
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x59]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.18004bed0
movups xmm0, xmmword [0x1800e7078]
movzx ecx, byte [0x1800e7088]
xor r8d, r8d
mov byte [rbp + 0xf], cl
mov rbx, rax
movups xmmword [rbp - 1], xmm0
cmp edi, 2
jl 0x180032d67
movdqa xmm0, xmmword [0x1800f8e40]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800f8c90]
movdqa xmm4, xmmword [0x1800f8f00]
movdqa xmm6, xmmword [0x1800f8d00]
movdqa xmmword [rbp - 0x59], xmm0
mov edx, dword [rbp - 0x59]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, 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 xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x180032c60
cmp r8d, 0x11
jge 0x180032da2
movsxd rax, r8d
lea r9, [rbp - 1]
add r9, rax
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x180032d71
movaps xmm6, xmmword [rsp + 0xa0]
lea rax, [rbp - 1]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x39], xmm0
mov r8, r15
movdqu xmmword [rbp - 0x29], xmm1
inc r8
cmp byte [rax + r8], 0
jne 0x180032dc0
mov qword [rsp + 0xe8], rsi
lea rdx, [rbp - 1]
mov qword [rsp + 0xf0], r12
lea rcx, [rbp - 0x39]
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0xb0], r14
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
lea r8, [rbp - 0x59]
mov qword [rbp - 0x59], rax
xor edx, edx
mov qword [rbp - 0x51], rbx
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180032e52
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180032e4d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
movsd xmm0, qword [str.tWWNISQRZ2A]
xorps xmm1, xmm1
movzx ecx, word [0x1800e8850]
mov r8, r15
movzx eax, byte [0x1800e8852]
movsd qword [rbp - 0x59], xmm0
xorps xmm0, xmm0
xor byte [rbp - 0x58], 0x38
xor byte [rbp - 0x57], 0x39
xor byte [rbp - 0x56], 0x3a
xor byte [rbp - 0x55], 0x3b
xor byte [rbp - 0x54], 0x3c
xor byte [rbp - 0x53], 0x3d
xor byte [rbp - 0x52], 0x3e
mov word [rbp - 0x51], cx
xor cl, 0x3f
xor byte [rbp - 0x50], 0x40
xor al, 0x41
mov byte [rbp - 0x59], 0x43
mov byte [rbp - 0x4f], al
lea rax, [rbp - 0x59]
mov byte [rbp - 0x51], cl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
inc r8
cmp byte [rax + r8], 0
jne 0x180032eb6
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e8ca9], 0
movsd xmm0, qword [str.bViUHOXML_]
movzx eax, word [0x1800e8ca8]
movsd qword [rbp - 0x59], xmm0
mov word [rbp - 0x51], ax
je 0x180032f16
xor byte [rbp - 0x58], 0x38
xor byte [rbp - 0x57], 0x39
xor byte [rbp - 0x56], 0x3a
xor byte [rbp - 0x55], 0x3b
xor byte [rbp - 0x54], 0x3c
xor byte [rbp - 0x53], 0x3d
xor byte [rbp - 0x52], 0x3e
xor byte [rbp - 0x51], 0x3f
xor byte [rbp - 0x50], 0x40
mov byte [rbp - 0x59], 0x55
xorps xmm0, xmm0
lea rax, [rbp - 0x59]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180032f30
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 1]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004bed0
movsd xmm0, qword [str.tWWNISQRZ2A]
xorps xmm1, xmm1
movzx edx, word [0x1800e8850]
mov rbx, rax
movzx ecx, byte [0x1800e8852]
lea rax, [rbp - 0x59]
movsd qword [rbp - 0x59], xmm0
mov r8, r15
xor byte [rbp - 0x58], 0x38
xorps xmm0, xmm0
xor byte [rbp - 0x57], 0x39
xor byte [rbp - 0x56], 0x3a
xor byte [rbp - 0x55], 0x3b
xor byte [rbp - 0x54], 0x3c
xor byte [rbp - 0x53], 0x3d
xor byte [rbp - 0x52], 0x3e
mov word [rbp - 0x51], dx
xor dl, 0x3f
xor byte [rbp - 0x50], 0x40
xor cl, 0x41
mov byte [rbp - 0x59], 0x43
mov byte [rbp - 0x4f], cl
mov byte [rbp - 0x51], dl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180032fc0
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
mov rsi, qword [rbp - 0x11]
mov r12, qword [rbp - 9]
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x180033002
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
jmp 0x18003301a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180033055
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180033050
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
mov r14, qword [rbp - 0x19]
mov r13, rsi
sub r13, r14
xor r9d, r9d
sar r13, 4
mov edi, 0x28
mov ebx, edi
test r13, r13
je 0x180033105
xor r8d, r8d
mov edx, edi
nop dword [rax + rax]
mov rax, r8
mov r10d, ebx
add rax, rax
mov rcx, rdx
mov r11, qword [r14 + rax*8]
cmp ebx, 0x1a0
jge 0x1800330ef
nop dword [rax + rax]
mov rax, r8
add rax, rax
mov rax, qword [r14 + rax*8 + 8]
cmp qword [r11 + rcx], rax
jne 0x1800330b6
cmp rcx, rdx
jge 0x1800330c9
add r10d, 4
add rcx, 4
cmp r10d, 0x1a0
jl 0x1800330a0
jmp 0x1800330ef
cmovle r10d, ebx
xor eax, eax
cmp rcx, rdx
mov ebx, r10d
cmovle eax, r9d
mov r9d, eax
xor eax, eax
cmp rcx, rdx
cmovle rax, r8
cmovle rcx, rdx
mov r8, rax
mov rdx, rcx
inc r9d
inc r8
movsxd rax, r9d
cmp rax, r13
jb 0x180033080
cmp ebx, edi
jne 0x180033a8d
mov eax, dword [0x1800e7f3c]
cmp r14, rsi
movzx ecx, word [0x1800e7f40]
xorps xmm0, xmm0
cmovne rsi, r14
mov dword [rbp + 0x67], eax
movzx eax, byte [0x1800e7f42]
xorps xmm1, xmm1
xor byte [rbp + 0x68], 0x38
mov r8, r15
xor byte [rbp + 0x69], 0x39
xor byte [rbp + 0x6a], 0x3a
mov word [rbp + 0x6b], cx
xor cl, 0x3b
xor byte [rbp + 0x6c], 0x3c
xor al, 0x3d
mov qword [rbp - 0x11], rsi
mov byte [rbp + 0x6d], al
lea rax, [rbp + 0x67]
mov byte [rbp + 0x67], 0x56
mov byte [rbp + 0x6b], cl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
inc r8
cmp byte [rax + r8], 0
jne 0x180033160
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e87d1], 0
movzx eax, word [0x1800e87d0]
mov word [rbp + 0x67], ax
je 0x180033193
xor byte [rbp + 0x68], 0x38
mov byte [rbp + 0x67], 0x58
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800331b0
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004bed0
movzx edx, word [0x1800e7f40]
xorps xmm0, xmm0
mov ecx, dword [0x1800e7f3c]
xorps xmm1, xmm1
mov dword [rbp + 0x67], ecx
mov rbx, rax
movzx ecx, byte [0x1800e7f42]
lea rax, [rbp + 0x67]
xor byte [rbp + 0x68], 0x38
mov r8, r15
xor byte [rbp + 0x69], 0x39
xor byte [rbp + 0x6a], 0x3a
mov word [rbp + 0x6b], dx
xor dl, 0x3b
xor byte [rbp + 0x6c], 0x3c
xor cl, 0x3d
mov byte [rbp + 0x67], 0x56
mov byte [rbp + 0x6d], cl
mov byte [rbp + 0x6b], dl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033230
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003326e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x18003328a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1800332c5
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800332c0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
cmp byte [0x1800e86df], 0
mov rax, qword [str.a_ZNTN_t_d]
mov r13d, dword [0x18010a088]
mov qword [rbp + 0x67], rax
je 0x180033421
cmp r13d, 2
jl 0x1800333e6
movdqa xmm2, xmmword [0x1800f8c90]
movdqa xmm4, xmmword [0x1800f8f00]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x1800f8cb0]
movdqa xmm0, xmm2
mov eax, dword [0x1800f8e40]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800f8d00]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
movd xmm1, dword [rbp + 0x67]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp + 0x67], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800f8d00]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
movd xmm1, dword [rbp + 0x6b]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x6b], xmm2
jmp 0x180033421
lea r9, [rbp + 0x67]
xor r8d, r8d
nop dword [rax]
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x1800333f0
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033440
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e87d1], 0
movzx eax, word [0x1800e87d0]
mov word [rbp + 0x67], ax
je 0x180033473
xor byte [rbp + 0x68], 0x38
mov byte [rbp + 0x67], 0x58
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033490
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004bed0
cmp byte [0x1800e86df], 0
mov rbx, rax
mov rcx, qword [str.a_ZNTN_t_d]
mov qword [rbp + 0x67], rcx
je 0x180033611
cmp r13d, 2
jl 0x1800335d1
movdqa xmm2, xmmword [0x1800f8c90]
movdqa xmm4, xmmword [0x1800f8f00]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x1800f8cb0]
movdqa xmm0, xmm2
mov eax, dword [0x1800f8e40]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800f8d00]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
movd xmm1, dword [rbp + 0x67]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp + 0x67], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800f8d00]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800f8e10]
movd xmm1, dword [rbp + 0x6b]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x6b], xmm2
jmp 0x180033611
lea r9, [rbp + 0x67]
xor r8d, r8d
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x1800335e0
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033630
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003366e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x18003368a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1800336c5
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800336c0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
movsd xmm0, qword [str.a_ZNTN]
xorps xmm1, xmm1
movzx eax, byte [0x1800e7f50]
mov r8, r15
movsd qword [rbp - 0x59], xmm0
xorps xmm0, xmm0
xor byte [rbp - 0x58], 0x38
xor byte [rbp - 0x57], 0x39
xor byte [rbp - 0x56], 0x3a
xor byte [rbp - 0x55], 0x3b
xor byte [rbp - 0x54], 0x3c
xor byte [rbp - 0x53], 0x3d
xor byte [rbp - 0x52], 0x3e
xor al, 0x3f
mov byte [rbp - 0x59], 0x56
mov byte [rbp - 0x51], al
lea rax, [rbp - 0x59]
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
inc r8
cmp byte [rax + r8], 0
jne 0x180033714
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e87d1], 0
movzx eax, word [0x1800e87d0]
mov word [rbp + 0x67], ax
je 0x180033747
xor byte [rbp + 0x68], 0x38
mov byte [rbp + 0x67], 0x58
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033760
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004bed0
movsd xmm0, qword [str.a_ZNTN]
xorps xmm1, xmm1
movzx ecx, byte [0x1800e7f50]
mov rbx, rax
movsd qword [rbp - 0x59], xmm0
lea rax, [rbp - 0x59]
xor byte [rbp - 0x58], 0x38
xorps xmm0, xmm0
xor byte [rbp - 0x57], 0x39
mov r8, r15
xor byte [rbp - 0x56], 0x3a
xor byte [rbp - 0x55], 0x3b
xor byte [rbp - 0x54], 0x3c
xor byte [rbp - 0x53], 0x3d
xor byte [rbp - 0x52], 0x3e
xor cl, 0x3f
mov byte [rbp - 0x59], 0x56
mov byte [rbp - 0x51], cl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800337e0
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003381e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x18003383a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180033875
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180033870
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
mov eax, dword [0x1800e75f0]
xorps xmm0, xmm0
mov dword [rbp + 0x67], eax
xorps xmm1, xmm1
movzx eax, byte [0x1800e75f4]
mov r8, r15
xor byte [rbp + 0x68], 0x38
xor byte [rbp + 0x69], 0x39
xor byte [rbp + 0x6a], 0x3a
xor al, 0x3b
mov byte [rbp + 0x67], 0x47
mov byte [rbp + 0x6b], al
lea rax, [rbp + 0x67]
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
inc r8
cmp byte [rax + r8], 0
jne 0x1800338b0
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
cmp byte [0x1800e8d9d], 0
movzx eax, word [0x1800e8d9c]
mov word [rbp + 0x67], ax
je 0x1800338e3
xor byte [rbp + 0x68], 0x38
mov byte [rbp + 0x67], 0x41
xorps xmm0, xmm0
lea rax, [rbp + 0x67]
xorps xmm1, xmm1
mov r8, r15
movups xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180033900
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.180013f10
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004bed0
mov ecx, dword [0x1800e75f0]
xorps xmm0, xmm0
mov dword [rbp + 0x67], ecx
xorps xmm1, xmm1
movzx ecx, byte [0x1800e75f4]
mov rbx, rax
xor byte [rbp + 0x68], 0x38
lea rax, [rbp + 0x67]
xor byte [rbp + 0x69], 0x39
xor byte [rbp + 0x6a], 0x3a
xor cl, 0x3b
mov byte [rbp + 0x67], 0x47
mov byte [rbp + 0x6b], cl
movups xmmword [rbp - 0x39], xmm0
movdqu xmmword [rbp - 0x29], xmm1
inc r15
cmp byte [rax + r15], 0
jne 0x180033960
mov r8, r15
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.180013f10
lea rcx, [rbp - 0x39]
call fcn.18004bb40
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003399d
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
jmp 0x1800339b9
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004c650
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1800339f4
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800339ef
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
call fcn.1800b2a4c
sub rsi, r14
xor r8d, r8d
sar rsi, 4
mov ebx, edi
test rsi, rsi
je 0x180033a8d
xor edx, edx
nop dword [rax + rax]
mov rax, rdx
mov r9d, ebx
add rax, rax
mov rcx, rdi
mov r10, qword [r14 + rax*8]
cmp ebx, 0x1a0
jge 0x180033a7f
nop dword [rax + rax]
mov rax, rdx
add rax, rax
mov rax, qword [r14 + rax*8 + 8]
cmp qword [rcx + r10], rax
jne 0x180033a46
cmp rcx, rdi
jge 0x180033a59
add r9d, 4
add rcx, 4
cmp r9d, 0x1a0
jl 0x180033a30
jmp 0x180033a7f
cmovle r9d, ebx
xor eax, eax
cmp rcx, rdi
mov ebx, r9d
cmovle eax, r8d
mov r8d, eax
xor eax, eax
cmp rcx, rdi
cmovle rax, rdx
cmovle rcx, rdi
mov rdx, rax
mov rdi, rcx
inc r8d
inc rdx
movsxd rax, r8d
cmp rax, rsi
jb 0x180033a10
test r14, r14
je 0x180033ac5
sub r12, r14
mov rax, r14
and r12, 0xfffffffffffffff0
cmp r12, 0x1000
jb 0x180033aba
mov r14, qword [r14 - 8]
add r12, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180033af4
mov rdx, r12
mov rcx, r14
call fcn.1800b2a4c
mov r14, qword [rsp + 0xb0]
mov eax, ebx
mov r13, qword [rsp + 0xf8]
mov r12, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xe8]
add rsp, 0xb8
pop r15
pop rdi
pop rbx
pop rbp
ret
call fcn.1800b96fc
int3