Function at 0x180034710
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rdi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xb8
movzx eax, byte [0x1800e9130]
xorps xmm0, xmm0
mov edi, dword [0x18010c088]
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 [0x1800e9120]
movups xmmword [rbp - 1], xmm0
cmp edi, 2
jl 0x18003489f
movdqa xmm0, xmmword [0x1800fac90]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800fab00]
movdqa xmm4, xmmword [0x1800fada0]
movdqa xmm6, xmmword [0x1800faba0]
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
paddd xmm1, xmm2
psrad xmm1, 5
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 [0x1800fac70]
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
paddd xmm1, xmm3
psrad xmm1, 5
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 [0x1800fac70]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x180034790
cmp r8d, 0x11
jge 0x1800348e4
movsxd rax, r8d
lea r9, [rbp - 1]
add r9, rax
nop dword [rax]
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x1800348b0
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
inc r8
cmp byte [rax + r8], 0
jne 0x180034901
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800ea35f], 0
movups xmm0, xmmword [0x1800ea348]
movups xmmword [rbp - 1], xmm0
movsd xmm0, qword [0x1800ea358]
movsd qword [rbp + 0xf], xmm0
je 0x180034ac4
cmp edi, 2
jl 0x180034a89
movdqa xmm0, xmmword [0x1800fac90]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800fab00]
xor edx, edx
movdqa xmm4, xmmword [0x1800fada0]
movdqa xmm6, xmmword [0x1800faba0]
movdqa xmmword [rbp - 0x59], xmm0
mov r8d, dword [rbp - 0x59]
nop word [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
paddd xmm1, xmm2
psrad xmm1, 5
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 [0x1800fac70]
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
paddd xmm1, xmm3
psrad xmm1, 5
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 [0x1800fac70]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp edx, 0x18
jl 0x180034980
jmp 0x180034ac4
lea r9, [rbp - 1]
xor r8d, r8d
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9 - 1], al
cmp r8d, 0x18
jl 0x180034a90
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 0x180034ae0
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x59]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x59]
call fcn.18004e7c0
movups xmm0, xmmword [0x1800e9120]
movzx ecx, byte [0x1800e9130]
xor r8d, r8d
mov byte [rbp + 0xf], cl
mov rbx, rax
movups xmmword [rbp - 1], xmm0
cmp edi, 2
jl 0x180034c6f
movdqa xmm0, xmmword [0x1800fac90]
lea rcx, [rbp + 3]
movdqa xmm5, xmmword [0x1800fab00]
movdqa xmm4, xmmword [0x1800fada0]
movdqa xmm6, xmmword [0x1800faba0]
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
paddd xmm1, xmm2
psrad xmm1, 5
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 [0x1800fac70]
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
paddd xmm1, xmm3
psrad xmm1, 5
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 [0x1800fac70]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x180034b60
cmp r8d, 0x11
jge 0x180034cb4
movsxd rax, r8d
lea r9, [rbp - 1]
add r9, rax
nop dword [rax]
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x180034c80
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 0x180034cd2
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.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
lea r8, [rbp - 0x59]
mov qword [rbp - 0x59], rax
xor edx, edx
mov qword [rbp - 0x51], rbx
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180034d64
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180034d5f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
movsd xmm0, qword [str.r___GY_TH_]
xorps xmm1, xmm1
movzx ecx, word [0x1800ea560]
mov r8, r15
movzx eax, byte [0x1800ea562]
movsd qword [rbp - 0x59], xmm0
xorps xmm0, xmm0
xor byte [rbp - 0x58], 0x32
xor byte [rbp - 0x57], 0x33
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
mov word [rbp - 0x51], cx
xor cl, 0x39
xor byte [rbp - 0x50], 0x3a
xor al, 0x3b
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
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180034dd0
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800e9f49], 0
movsd xmm0, qword [0x1800e9f40]
movzx eax, word [0x1800e9f48]
movsd qword [rbp - 0x59], xmm0
mov word [rbp - 0x51], ax
je 0x180034e30
xor byte [rbp - 0x58], 0x32
xor byte [rbp - 0x57], 0x33
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
xor byte [rbp - 0x51], 0x39
xor byte [rbp - 0x50], 0x3a
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
inc r8
cmp byte [rax + r8], 0
jne 0x180034e46
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 1]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004e7c0
movsd xmm0, qword [str.r___GY_TH_]
xorps xmm1, xmm1
movzx edx, word [0x1800ea560]
mov rbx, rax
movzx ecx, byte [0x1800ea562]
lea rax, [rbp - 0x59]
movsd qword [rbp - 0x59], xmm0
mov r8, r15
xor byte [rbp - 0x58], 0x32
xorps xmm0, xmm0
xor byte [rbp - 0x57], 0x33
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
mov word [rbp - 0x51], dx
xor dl, 0x39
xor byte [rbp - 0x50], 0x3a
xor cl, 0x3b
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
inc r8
cmp byte [rax + r8], 0
jne 0x180034ed2
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
mov rsi, qword [rbp - 0x11]
mov r12, qword [rbp - 9]
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x180034f14
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
jmp 0x180034f2c
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180034f67
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180034f62
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
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 0x180035015
xor r8d, r8d
mov edx, edi
nop dword [rax]
mov rax, r8
mov r10d, ebx
add rax, rax
mov rcx, rdx
mov r11, qword [r14 + rax*8]
cmp ebx, 0x1a0
jge 0x180034fff
nop dword [rax + rax]
mov rax, r8
add rax, rax
mov rax, qword [r14 + rax*8 + 8]
cmp qword [r11 + rcx], rax
jne 0x180034fc6
cmp rcx, rdx
jge 0x180034fd9
add r10d, 4
add rcx, 4
cmp r10d, 0x1a0
jl 0x180034fb0
jmp 0x180034fff
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 0x180034f90
cmp ebx, edi
jne 0x1800359ad
mov eax, dword [str.gWP_ZD7]
cmp r14, rsi
movzx ecx, word [0x1800ea4f8]
xorps xmm0, xmm0
cmovne rsi, r14
mov dword [rbp + 0x67], eax
movzx eax, byte [0x1800ea4fa]
xorps xmm1, xmm1
xor byte [rbp + 0x68], 0x32
mov r8, r15
xor byte [rbp + 0x69], 0x33
xor byte [rbp + 0x6a], 0x34
mov word [rbp + 0x6b], cx
xor cl, 0x35
xor byte [rbp + 0x6c], 0x36
xor al, 0x37
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 0x180035070
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800e818d], 0
movzx eax, word [0x1800e818c]
mov word [rbp + 0x67], ax
je 0x1800350a3
xor byte [rbp + 0x68], 0x32
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 0x1800350c0
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004e7c0
movzx edx, word [0x1800ea4f8]
xorps xmm0, xmm0
mov ecx, dword [str.gWP_ZD7]
xorps xmm1, xmm1
mov dword [rbp + 0x67], ecx
mov rbx, rax
movzx ecx, byte [0x1800ea4fa]
lea rax, [rbp + 0x67]
xor byte [rbp + 0x68], 0x32
mov r8, r15
xor byte [rbp + 0x69], 0x33
xor byte [rbp + 0x6a], 0x34
mov word [rbp + 0x6b], dx
xor dl, 0x35
xor byte [rbp + 0x6c], 0x36
xor cl, 0x37
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 0x180035140
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003517e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x18003519a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1800351d5
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800351d0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
cmp byte [0x1800e9a0f], 0
mov rax, qword [0x1800e9a08]
mov r13d, dword [0x18010c088]
mov qword [rbp + 0x67], rax
je 0x180035344
cmp r13d, 2
jl 0x1800352fe
movdqa xmm2, xmmword [0x1800fab00]
movdqa xmm3, xmmword [0x1800fab20]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x1800fada0]
movdqa xmm0, xmm2
mov eax, dword [0x1800fac90]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800faba0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fac70]
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
pmuldq xmm1, xmm4
movd dword [rbp + 0x67], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800faba0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fac70]
movd xmm1, dword [rbp + 0x6b]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x6b], xmm2
jmp 0x180035344
lea r9, [rbp + 0x67]
xor r8d, r8d
nop word [rax + rax]
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x180035310
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 0x180035360
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800e818d], 0
movzx eax, word [0x1800e818c]
mov word [rbp + 0x67], ax
je 0x180035393
xor byte [rbp + 0x68], 0x32
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 0x1800353b0
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004e7c0
cmp byte [0x1800e9a0f], 0
mov rbx, rax
mov rcx, qword [0x1800e9a08]
mov qword [rbp + 0x67], rcx
je 0x180035534
cmp r13d, 2
jl 0x1800354f9
movdqa xmm2, xmmword [0x1800fab00]
movdqa xmm3, xmmword [0x1800fab20]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x1800fada0]
movdqa xmm0, xmm2
mov eax, dword [0x1800fac90]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800faba0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fac70]
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
pmuldq xmm1, xmm4
movd dword [rbp + 0x67], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800faba0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fac70]
movd xmm1, dword [rbp + 0x6b]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x6b], xmm2
jmp 0x180035534
lea r9, [rbp + 0x67]
xor r8d, r8d
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x180035500
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 0x180035550
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003558e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x1800355aa
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1800355e5
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800355e0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
movsd xmm0, qword [str.gWP_ZD]
xorps xmm1, xmm1
movzx eax, byte [0x1800ea7c8]
mov r8, r15
movsd qword [rbp - 0x59], xmm0
xorps xmm0, xmm0
xor byte [rbp - 0x58], 0x32
xor byte [rbp - 0x57], 0x33
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
xor al, 0x39
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 0x180035634
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800e818d], 0
movzx eax, word [0x1800e818c]
mov word [rbp + 0x67], ax
je 0x180035667
xor byte [rbp + 0x68], 0x32
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 0x180035680
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004e7c0
movsd xmm0, qword [str.gWP_ZD]
xorps xmm1, xmm1
movzx ecx, byte [0x1800ea7c8]
mov rbx, rax
movsd qword [rbp - 0x59], xmm0
lea rax, [rbp - 0x59]
xor byte [rbp - 0x58], 0x32
xorps xmm0, xmm0
xor byte [rbp - 0x57], 0x33
mov r8, r15
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
xor cl, 0x39
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 0x180035700
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x18003573e
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
mov qword [rbp - 0x11], rsi
jmp 0x18003575a
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180035795
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180035790
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
mov eax, dword [0x1800ea3bc]
xorps xmm0, xmm0
mov dword [rbp + 0x67], eax
xorps xmm1, xmm1
movzx eax, byte [0x1800ea3c0]
mov r8, r15
xor byte [rbp + 0x68], 0x32
xor byte [rbp + 0x69], 0x33
xor byte [rbp + 0x6a], 0x34
xor al, 0x35
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 0x1800357d0
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
cmp byte [0x1800e81d1], 0
movzx eax, word [0x1800e81d0]
mov word [rbp + 0x67], ax
je 0x180035803
xor byte [rbp + 0x68], 0x32
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 0x180035820
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 1]
call fcn.1800140a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 1]
call fcn.18004e7c0
mov ecx, dword [0x1800ea3bc]
xorps xmm0, xmm0
mov dword [rbp + 0x67], ecx
xorps xmm1, xmm1
movzx ecx, byte [0x1800ea3c0]
mov rbx, rax
xor byte [rbp + 0x68], 0x32
lea rax, [rbp + 0x67]
xor byte [rbp + 0x69], 0x33
xor byte [rbp + 0x6a], 0x34
xor cl, 0x35
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 0x180035880
mov r8, r15
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x39]
call fcn.1800140a0
lea rcx, [rbp - 0x39]
call fcn.18004e430
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rbx
cmp rsi, r12
je 0x1800358bd
mov qword [rsi], rax
mov qword [rsi + 8], rbx
add rsi, 0x10
jmp 0x1800358d9
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x19]
call fcn.18004ef40
mov r12, qword [rbp - 9]
mov rsi, qword [rbp - 0x11]
mov r14, qword [rbp - 0x19]
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180035914
mov rcx, qword [rbp - 0x39]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003590f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
call fcn.1800b4d3c
sub rsi, r14
xor r8d, r8d
sar rsi, 4
mov ebx, edi
test rsi, rsi
je 0x1800359ad
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 0x18003599f
nop dword [rax + rax]
mov rax, rdx
add rax, rax
mov rax, qword [r14 + rax*8 + 8]
cmp qword [rcx + r10], rax
jne 0x180035966
cmp rcx, rdi
jge 0x180035979
add r9d, 4
add rcx, 4
cmp r9d, 0x1a0
jl 0x180035950
jmp 0x18003599f
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 0x180035930
test r14, r14
je 0x1800359e5
sub r12, r14
mov rax, r14
and r12, 0xfffffffffffffff0
cmp r12, 0x1000
jb 0x1800359da
mov r14, qword [r14 - 8]
add r12, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035a14
mov rdx, r12
mov rcx, r14
call fcn.1800b4d3c
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.1800bbacc
int3