Function at 0x180002420
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rdi
lea rbp, [rsp - 0x78]
sub rsp, 0x178
mov r8d, dword [0x180148b48]
xor edi, edi
movaps xmmword [rsp + 0x130], xmm7
test r8d, r8d
je 0x1800024e2
mov r9d, dword [0x180148af8]
test r9d, r9d
je 0x1800024e2
mov rcx, qword [0x180148b08]
test rcx, rcx
je 0x180002480
mov rax, qword [rcx]
call qword [rax + 0x10]
mov r8d, dword [0x180148b48]
mov r9d, dword [0x180148af8]
mov qword [0x180148b08], rdi
mov rcx, qword [0x180148af0]
xor edx, edx
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rcx, qword [0x180148af0]
lea r9, [rbp - 0x60]
lea r8, [0x1800e0878]
mov dword [0x180148af8], edi
xor edx, edx
mov dword [0x180148b48], edi
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [0x180148a80]
lea r9, [0x180148b08]
mov rdx, qword [rbp - 0x60]
xor r8d, r8d
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp byte [0x180117479], dil
movss xmm7, dword [0x1800e25a8]
mov dword [0x180148c6c], 0x43200000
mov dword [0x180148c70], 0x3f800000
je 0x180006f36
cmp byte [0x1800e08e9], dil
movsd xmm0, qword [0x1800e08e0]
movzx eax, word [0x1800e08e8]
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x160], r14
mov r14, qword [0x180148c20]
mov qword [rsp + 0x158], r15
movaps xmmword [rsp + 0x140], xmm6
movaps xmmword [rsp + 0x120], xmm8
movaps xmmword [rsp + 0x110], xmm9
movaps xmmword [rsp + 0x100], xmm10
movaps xmmword [rsp + 0xf0], xmm11
movaps xmmword [rsp + 0xe0], xmm12
movaps xmmword [rsp + 0xd0], xmm13
movaps xmmword [rsp + 0xc0], xmm14
movaps xmmword [rsp + 0xb0], xmm15
mov qword [r14 + 0x37d8], rdi
mov dword [r14 + 0x37e4], edi
mov dword [r14 + 0x381c], 0x41a00000
mov dword [r14 + 0x3820], 0x41a00000
mov dword [r14 + 0x3844], 0x41000000
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x180002606
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x4d
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x202b
call fcn.1800253a0
mov rcx, qword [0x180148c20]
lea r8, str.Background
xor edx, edx
mov rax, qword [rcx + 0x3ef8]
movss xmm0, dword [rcx + 0x381c]
movss xmm15, dword [rcx + 0x3820]
movss dword [rbp + 0x98], xmm0
movsd xmm8, qword [rax + 0x20]
mov rax, qword [rcx + 0x48d0]
movss dword [rbp + 0xa8], xmm15
movsd qword [rbp - 0x68], xmm8
mov rcx, qword [rax]
call fcn.18001f170
movss xmm1, dword [0x18014951c]
xorps xmm6, xmm6
movss xmm0, dword [0x180149518]
mov r10, rax
mov rcx, qword [0x180148c20]
movss dword [rsp + 0x54], xmm1
movss xmm1, dword [0x180149524]
movss dword [rsp + 0x50], xmm0
mulss xmm1, dword [rcx + 0x37d0]
lea rcx, [rsp + 0x50]
movss xmm0, dword [0x180149520]
movss dword [rsp + 0x58], xmm0
movaps xmm0, xmm8
addss xmm0, dword [0x180148398]
movss dword [rsp + 0x5c], xmm1
movsd qword [rbp - 0x70], xmm8
movss xmm9, dword [rbp - 0x6c]
movaps xmm1, xmm9
addss xmm1, dword [0x18014839c]
addss xmm0, dword [0x180148c6c]
addss xmm1, xmm6
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
call fcn.18001b050
movss xmm0, dword [0x1800e2680]
lea r8, [rbp + 0x90]
mov r9d, eax
mov dword [rsp + 0x28], edi
lea rdx, [rbp - 0x70]
movss dword [rsp + 0x20], xmm0
mov rcx, r10
call fcn.1800388b0
mov rax, qword [0x180148c20]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x48d0]
mov rcx, qword [rcx]
call fcn.18001f170
movss xmm1, dword [0x180149484]
mov r10, rax
movss xmm0, dword [0x180149480]
mov rcx, qword [0x180148c20]
movss dword [rsp + 0x54], xmm1
movss xmm1, dword [0x18014948c]
movss dword [rsp + 0x50], xmm0
mulss xmm1, dword [rcx + 0x37d0]
lea rcx, [rsp + 0x50]
movss xmm0, dword [0x180149488]
movss dword [rsp + 0x58], xmm0
movaps xmm0, xmm8
addss xmm0, dword [0x180148398]
movss dword [rsp + 0x5c], xmm1
movaps xmm1, xmm9
addss xmm1, dword [0x18014839c]
addss xmm0, dword [0x180148c6c]
addss xmm1, xmm6
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
call fcn.18001b050
movss xmm0, dword [0x1800e2680]
lea r8, [rbp + 0x90]
movss dword [rsp + 0x30], xmm7
mov r9d, eax
movss dword [rsp + 0x20], xmm0
lea rdx, [rbp - 0x70]
mov rcx, r10
call fcn.1800387a0
movss xmm1, dword [0x180149754]
lea rcx, [rsp + 0x50]
movss xmm0, dword [0x180149750]
mov rax, qword [0x180148c20]
movss dword [rsp + 0x54], xmm1
movss xmm1, dword [0x18014975c]
movss dword [rsp + 0x50], xmm0
mulss xmm1, dword [rax + 0x37d0]
movss xmm0, dword [0x180149758]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
call fcn.18001b050
mov edx, eax
xor ecx, ecx
call fcn.18001b560
mov rcx, qword [0x180148bb8]
mov rbx, qword [0x180148c20]
mov rsi, rcx
mov qword [rbp + 0x90], rcx
test rcx, rcx
jne 0x180002891
mov rcx, qword [rbx + 0x68]
test rcx, rcx
jne 0x180002887
mov rax, qword [rbx + 0x58]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx]
mov qword [rbp + 0x90], rcx
mov rsi, rcx
call fcn.180028100
lea rcx, [rbx + 0x4860]
lea rdx, [rbp + 0x90]
call fcn.180033810
mov rdx, qword [rsi + 0x40]
mov rcx, qword [rbx + 0x3ef8]
mov rdx, qword [rdx + 8]
mov rcx, qword [rcx + 0x298]
call fcn.180036080
movzx eax, word [0x1800e075c]
mov r8d, edi
movsd xmm0, qword [0x1800e0750]
mov esi, dword [0x1800f1098]
mov ecx, dword [0x1800e0758]
movdqa xmm13, xmmword [0x1800e2a90]
movdqa xmm12, xmmword [0x1800e2a40]
movdqa xmm10, xmmword [0x1800e2a30]
movdqa xmm11, xmmword [0x1800e2a10]
movdqa xmm14, xmmword [str.1111]
movdqa xmm9, xmmword [0x1800e2c30]
movdqa xmm7, xmmword [str.2222222222222222]
mov word [rsp + 0x5c], ax
movzx eax, byte [0x1800e075e]
mov byte [rsp + 0x5e], al
mov dword [rbp + 0x90], 0x3f000000
mov dword [rbp + 0x94], 0x3f000000
movsd qword [rsp + 0x50], xmm0
mov dword [rsp + 0x58], ecx
cmp esi, 2
jl 0x180002a89
movdqa xmm1, xmm11
movdqa xmm0, xmm11
punpckldq xmm1, xmm11
mov r8d, 0xc
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, dword [0x1800e0750]
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm7
xorps xmm1, xmm0
movdqa xmm0, xmm10
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm10
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, dword [rsp + 0x54]
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm7
xorps xmm1, xmm0
movdqa xmm0, xmm12
movd dword [rsp + 0x54], xmm1
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm12
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm7
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x180002aa0
movss xmm2, dword [rbp + 0x98]
lea rax, [rbp + 0x90]
movss xmm4, dword [rbp - 0x6c]
lea r8, [rsp + 0x50]
movaps xmm1, xmm2
mov qword [rsp + 0x30], rdi
mulss xmm1, dword [0x1800e2574]
lea rdx, [rsp + 0x7c]
mov qword [rsp + 0x28], rax
xor r9d, r9d
movaps xmm0, xmm8
mov qword [rsp + 0x20], rdi
addss xmm0, xmm2
movaps xmm3, xmm4
addss xmm1, dword [0x180148c6c]
addss xmm3, xmm15
lea rcx, [rsp + 0x40]
movss dword [rbp + 0xa0], xmm0
subss xmm1, dword [0x1800e269c]
addss xmm0, dword [0x1800e26bc]
movss dword [rbp - 0x74], xmm3
addss xmm1, xmm0
movaps xmm0, xmm8
addss xmm0, dword [0x1800e26b4]
movss dword [rsp + 0x7c], xmm1
movaps xmm1, xmm3
addss xmm1, dword [0x1800e2724]
addss xmm0, xmm2
addss xmm1, xmm6
movss dword [rsp + 0x40], xmm0
movss dword [rbp - 0x80], xmm1
movaps xmm1, xmm4
addss xmm1, dword [0x1800e26d8]
addss xmm1, xmm15
movss dword [rsp + 0x44], xmm1
call fcn.18001c2b0
call fcn.1800281c0
mov r8, qword [0x180148c20]
movsxd rax, dword [r8 + 0x4840]
cmp eax, 1
jl 0x180002bd5
mov rcx, qword [r8 + 0x4848]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, rax
movups xmmword [r8 + rax*8 + 0x38b8], xmm0
dec dword [r8 + 0x4840]
mov rax, qword [r8 + 0x3ef8]
movss xmm6, dword [rbp + 0x98]
movaps xmm0, xmm6
addss xmm0, dword [0x1800e2698]
mov byte [rax + 0xb8], 1
mov rax, qword [r8 + 0x3ef8]
movss xmm2, dword [rax + 0x20]
subss xmm2, dword [rax + 0x84]
movss xmm1, dword [rax + 0x24]
subss xmm1, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm2, xmm0
movaps xmm0, xmm15
addss xmm0, xmm15
movss dword [rax + 0x100], xmm2
addss xmm0, dword [0x1800e26e0]
addss xmm0, dword [0x1800e26ec]
addss xmm1, xmm0
movss dword [rax + 0x104], xmm1
call fcn.18002b4d0
cmp byte [0x1800e07f9], dil
movss xmm0, dword [0x180148c6c]
movss xmm8, dword [0x1800e26bc]
movups xmm2, xmmword [str.a__ZBV]
movzx eax, word [0x1800e07f8]
movdqa xmm15, xmmword [0x1800e2a50]
addss xmm0, xmm8
mov dword [rsp + 0x44], 0x420c0000
movups xmmword [rsp + 0x60], xmm2
mov word [rsp + 0x78], ax
movss dword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1800e07f0]
movsd qword [rsp + 0x70], xmm0
je 0x180002f81
mov r8d, edi
cmp esi, 2
jl 0x180002f3a
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movdqa xmm3, xmmword [0x1800e2a60]
psubd xmm2, xmm0
movd xmm1, dword [rsp + 0x6c]
andps xmm2, xmm13
packuswb xmm2, xmm2
mov r8d, 0x18
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x6c], xmm2
movdqa xmm2, xmmword [0x1800e2a70]
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x70]
pmulld xmm0, xmm14
psubd xmm3, xmm0
movd xmm0, ecx
andps xmm3, xmm13
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
xorps xmm3, xmm1
movdqa xmm1, xmm2
pmuldq xmm0, xmm9
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movd dword [rsp + 0x70], xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x74]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x1a
jl 0x180002f50
movups xmm2, xmmword [0x1800e0788]
lea r10, [rsp + 0x60]
movdqa xmm0, xmm2
psrldq xmm0, 0xf
movd eax, xmm0
movups xmmword [rsp + 0x50], xmm2
test al, al
je 0x18000318a
mov r8d, edi
cmp esi, 2
jl 0x18000315b
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x54]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x58]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movd xmm1, dword [rsp + 0x5c]
psubd xmm2, xmm0
andps xmm2, xmm13
movd xmm0, ecx
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
jmp 0x18000318a
lea r9, [rsp + 0x50]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x10
jl 0x180003160
cmp byte [0x1800e0bdd], dil
movzx eax, word [0x1800e0bdc]
mov word [rbp + 0x90], ax
je 0x1800031af
xor byte [rbp + 0x91], 0x33
mov byte [rbp + 0x90], 0x45
cmp dword [0x180149088], edi
lea rax, [rsp + 0x40]
mov r9, r10
mov qword [rsp + 0x20], rax
sete cl
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x90]
call fcn.1800466f0
test al, al
je 0x1800031e5
mov r10d, edi
mov dword [0x180149088], edi
jmp 0x1800031ec
mov r10d, dword [0x180149088]
movss xmm0, dword [0x180148c6c]
mov r8d, edi
movzx eax, byte [0x1800e0ad8]
addss xmm0, xmm8
mov dword [rsp + 0x44], 0x420c0000
mov byte [rsp + 0x78], al
movups xmm2, xmmword [str.q_U_QV]
movss dword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1800e0ad0]
movsd qword [rsp + 0x70], xmm0
movups xmmword [rsp + 0x60], xmm2
cmp esi, 2
jl 0x1800034b2
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movdqa xmm3, xmmword [0x1800e2a60]
psubd xmm2, xmm0
movd xmm1, dword [rsp + 0x6c]
andps xmm2, xmm13
packuswb xmm2, xmm2
mov r8d, 0x18
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x6c], xmm2
movdqa xmm2, xmmword [0x1800e2a70]
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x70]
pmulld xmm0, xmm14
psubd xmm3, xmm0
movd xmm0, ecx
andps xmm3, xmm13
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
xorps xmm3, xmm1
movdqa xmm1, xmm2
pmuldq xmm0, xmm9
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movd dword [rsp + 0x70], xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x74]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x19
jl 0x1800034c0
movups xmm2, xmmword [str.dZG_W_]
lea r11, [rsp + 0x60]
movdqa xmm0, xmm2
psrldq xmm0, 0xf
movd eax, xmm0
movups xmmword [rsp + 0x50], xmm2
test al, al
je 0x1800036fa
mov r8d, edi
cmp esi, 2
jl 0x1800036cb
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x54]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x58]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movd xmm1, dword [rsp + 0x5c]
psubd xmm2, xmm0
andps xmm2, xmm13
movd xmm0, ecx
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
jmp 0x1800036fa
lea r9, [rsp + 0x50]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x10
jl 0x1800036d0
cmp byte [0x1800e07a9], dil
movzx eax, word [0x1800e07a8]
mov word [rbp + 0x90], ax
je 0x18000371f
xor byte [rbp + 0x91], 0x33
mov byte [rbp + 0x90], 0x44
cmp r10d, 1
lea rax, [rsp + 0x40]
mov r9, r11
mov qword [rsp + 0x20], rax
sete cl
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x90]
call fcn.1800466f0
test al, al
je 0x180003757
mov r10d, 1
mov dword [0x180149088], r10d
jmp 0x18000375e
mov r10d, dword [0x180149088]
cmp byte [0x1800e0669], dil
movss xmm0, dword [0x180148c6c]
movups xmm2, xmmword [str.tFZVBWW]
movzx eax, word [0x1800e0668]
addss xmm0, xmm8
mov dword [rsp + 0x44], 0x420c0000
movups xmmword [rsp + 0x60], xmm2
mov word [rsp + 0x78], ax
movss dword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1800e0660]
movsd qword [rsp + 0x70], xmm0
je 0x180003a71
mov r8d, edi
cmp esi, 2
jl 0x180003a32
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movdqa xmm3, xmmword [0x1800e2a60]
psubd xmm2, xmm0
movd xmm1, dword [rsp + 0x6c]
andps xmm2, xmm13
packuswb xmm2, xmm2
mov r8d, 0x18
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x6c], xmm2
movdqa xmm2, xmmword [0x1800e2a70]
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x70]
pmulld xmm0, xmm14
psubd xmm3, xmm0
movd xmm0, ecx
andps xmm3, xmm13
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
xorps xmm3, xmm1
movdqa xmm1, xmm2
pmuldq xmm0, xmm9
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movd dword [rsp + 0x70], xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x74]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x1a
jl 0x180003a40
cmp byte [0x1800e0bfd], dil
movsd xmm0, qword [0x1800e0bf0]
movzx eax, word [0x1800e0bfc]
mov ecx, dword [0x1800e0bf8]
movsd qword [rsp + 0x7c], xmm0
mov word [rbp - 0x78], ax
mov dword [rbp - 0x7c], ecx
je 0x180003c31
mov r8d, edi
cmp esi, 2
jl 0x180003beb
movd eax, xmm7
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1800e0bf0]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x7c], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rbp - 0x80]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rbp - 0x80], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x7c], xmm2
mov eax, r8d
lea r9, [rsp + 0x7c]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180003c00
cmp byte [0x1800e0719], dil
movzx eax, word [0x1800e0718]
mov word [rbp + 0x90], ax
je 0x180003c56
xor byte [rbp + 0x91], 0x33
mov byte [rbp + 0x90], 0x41
cmp r10d, 2
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x20], rax
sete cl
lea r8, [rsp + 0x7c]
lea rdx, [rbp + 0x90]
call fcn.1800466f0
test al, al
je 0x180003c8b
mov dword [0x180149088], 2
call fcn.18002b600
mov r8, qword [0x180148c20]
lea r9, [rbp + 0x90]
movaps xmm0, xmm6
mov dword [rbp + 0x90], 0x3f800000
addss xmm0, dword [0x1800e2670]
mov dword [rbp + 0x94], 0x3f800000
mov rax, qword [r8 + 0x3ef8]
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x7c], 0x43020000
mov dword [rbp - 0x80], 0x43020000
mov byte [rax + 0xb8], 1
mov rax, qword [r8 + 0x3ef8]
movss xmm1, dword [rax + 0x24]
subss xmm1, dword [rax + 0x88]
movss xmm2, dword [rax + 0x20]
subss xmm2, dword [rax + 0x84]
mov byte [rax + 0x141], 1
addss xmm2, xmm0
movss xmm0, dword [rbp + 0xa8]
addss xmm0, dword [0x1800e2674]
movss dword [rax + 0x100], xmm2
addss xmm1, xmm0
movss dword [rax + 0x104], xmm1
mov rax, qword [r8 + 0x3ef8]
mov byte [rax + 0xb8], 1
mov rdx, qword [r8 + 0x3ef8]
mov rax, qword [rdx + 0x298]
mov ecx, dword [rax + 0x20]
mov byte [rdx + 0xb8], 1
lea rdx, [rsp + 0x7c]
mov rax, qword [r8 + 0x3ef8]
lea r8, [rsp + 0x40]
mov dword [0x180148c5c], ecx
movss xmm1, dword [rax + 0x20]
movss xmm0, dword [rax + 0x24]
subss xmm1, dword [rax + 0x84]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm1, dword [0x1800e26e4]
addss xmm0, dword [0x1800e2638]
movss dword [rax + 0x100], xmm1
movdqa xmm1, xmmword [0x1800e2be0]
movss dword [rax + 0x104], xmm0
xorps xmm0, xmm0
mov rcx, qword [0x180148b50]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm1
call fcn.180047970
movss xmm6, dword [0x180148c70]
lea rcx, [rsp + 0x40]
mulss xmm6, dword [0x1800e25cc]
call fcn.180001fe0
movaps xmm0, xmm6
movss xmm7, dword [rax]
movss xmm8, dword [rax + 4]
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movss dword [rbp + 0x90], xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movss xmm5, dword [rbp + 0x90]
movaps xmm6, xmm0
mov r9, qword [0x180148c20]
movaps xmm0, xmm5
mulss xmm0, xmm7
movaps xmm1, xmm6
mulss xmm1, xmm8
mov rax, qword [r9 + 0x3ef8]
subss xmm0, xmm1
movaps xmm1, xmm6
mulss xmm1, xmm7
subss xmm0, xmm7
movss dword [rbp + 0x90], xmm0
movaps xmm0, xmm5
mulss xmm0, xmm8
addss xmm0, xmm1
subss xmm0, xmm8
movsxd rdx, dword [0x180148c5c]
mov byte [rax + 0xb8], 1
mov rax, qword [r9 + 0x3ef8]
mov r8, qword [rax + 0x298]
cmp edx, dword [r8 + 0x20]
jge 0x180003efe
movss xmm7, dword [rbp + 0x90]
lea rcx, [rdx + rdx*4]
shl rcx, 2
movaps xmm8, xmm0
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r8 + 0x28]
movaps xmm0, xmm6
movaps xmm4, xmm5
movaps xmm1, xmm5
inc edx
mulss xmm0, dword [rax + rcx + 4]
mulss xmm4, dword [rax + rcx]
mulss xmm1, dword [rax + rcx + 4]
subss xmm4, xmm0
movaps xmm0, xmm6
mulss xmm0, dword [rax + rcx]
addss xmm1, xmm0
subss xmm4, xmm7
subss xmm1, xmm8
movss dword [rax + rcx], xmm4
movss dword [rax + rcx + 4], xmm1
add rcx, 0x14
cmp edx, dword [r8 + 0x20]
jl 0x180003eb0
mov rax, qword [r9 + 0x48d0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.18001f170
movss xmm2, dword [rbp + 0xa8]
xorps xmm8, xmm8
movss xmm1, dword [0x18014952c]
movaps xmm7, xmm2
movss xmm0, dword [0x180149528]
movaps xmm6, xmm2
mov rcx, qword [0x180148c20]
mov r10, rax
subss xmm6, dword [0x1800e269c]
mulss xmm7, dword [0x1800e25fc]
movss dword [rsp + 0x54], xmm1
movss xmm1, dword [0x180149534]
mulss xmm1, dword [rcx + 0x37d0]
lea rcx, [rsp + 0x50]
addss xmm6, dword [rbp - 0x6c]
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x180149530]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rbp + 0xa0]
addss xmm0, dword [0x1800e26e0]
movss dword [rsp + 0x5c], xmm1
addss xmm6, xmm2
movss xmm1, dword [0x18014839c]
addss xmm1, dword [0x1800e269c]
movss dword [rbp + 0xa0], xmm0
addss xmm0, dword [0x180148c6c]
movss dword [rbp + 0x9c], xmm6
subss xmm1, xmm7
movss dword [rbp + 0x90], xmm0
movsd xmm0, qword [rbp - 0x68]
addss xmm1, dword [rbp - 0x74]
addss xmm0, xmm8
addss xmm1, xmm8
addss xmm0, dword [rbp + 0x98]
movss dword [rbp + 0x94], xmm1
movss dword [rbp + 0x98], xmm0
movsd qword [rbp - 0x68], xmm0
call fcn.18001b050
movss xmm0, dword [0x1800e2640]
lea r8, [rbp + 0x90]
mov r9d, eax
mov dword [rsp + 0x28], edi
lea rdx, [rbp + 0x98]
movss dword [rsp + 0x20], xmm0
mov rcx, r10
call fcn.1800388b0
mov rax, qword [0x180148c20]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x48d0]
mov rcx, qword [rcx]
call fcn.18001f170
movss xmm0, dword [0x180149490]
mov r10, rax
movss xmm1, dword [0x180149494]
mov rcx, qword [0x180148c20]
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x180149498]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rbp + 0xa0]
addss xmm0, dword [0x180148c6c]
movss dword [rsp + 0x54], xmm1
movss xmm1, dword [0x18014949c]
mulss xmm1, dword [rcx + 0x37d0]
lea rcx, [rsp + 0x50]
movss dword [rbp + 0x90], xmm0
movss xmm0, dword [0x18014839c]
addss xmm0, dword [0x1800e269c]
movss dword [rsp + 0x5c], xmm1
movsd xmm1, qword [rbp - 0x68]
movss dword [rbp + 0x98], xmm1
movss dword [rbp + 0x9c], xmm6
subss xmm0, xmm7
addss xmm0, dword [rbp - 0x74]
addss xmm0, xmm8
movss dword [rbp + 0x94], xmm0
call fcn.18001b050
movss xmm0, dword [0x1800e2640]
lea r8, [rbp + 0x90]
movss xmm7, dword [0x1800e25a8]
lea rdx, [rbp + 0x98]
movss dword [rsp + 0x30], xmm7
mov r9d, eax
mov rcx, r10
movss dword [rsp + 0x20], xmm0
call fcn.1800387a0
call fcn.180002140
mov eax, dword [0x1801493b0]
mov r15d, dword [0x180149088]
movss xmm2, dword [0x1800e27a0]
cmp r15d, eax
jne 0x180004154
movaps xmm1, xmm7
jmp 0x180004157
movaps xmm1, xmm2
mov rbx, qword [0x180148c20]
movss xmm0, dword [rbx + 0x18]
mulss xmm0, dword [0x1800e2628]
mulss xmm0, xmm1
addss xmm0, dword [0x18014908c]
comiss xmm8, xmm0
jbe 0x180004182
xorps xmm6, xmm6
jmp 0x180004189
movaps xmm6, xmm7
minss xmm6, xmm0
movss dword [0x18014908c], xmm6
cmp r15d, eax
jne 0x1800041a0
movss dword [rbp + 0x90], xmm7
jmp 0x1800041a8
movss dword [rbp + 0x90], xmm2
movss xmm0, dword [0x1800e2754]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mulss xmm0, dword [rbx + 0x18]
mulss xmm0, dword [rbp + 0x90]
addss xmm0, dword [0x180149458]
comiss xmm8, xmm0
jbe 0x1800041d5
xorps xmm7, xmm7
jmp 0x1800041d9
minss xmm7, xmm0
ucomiss xmm6, xmm8
movss dword [0x180149458], xmm7
jp 0x1800041f8
jne 0x1800041f8
ucomiss xmm7, xmm8
jp 0x1800041f8
jne 0x1800041f8
mov dword [0x1801493b0], r15d
mulss xmm6, dword [r14 + 0x37d0]
xor ecx, ecx
movaps xmm1, xmm6
call fcn.18001b630
mov eax, dword [0x180149088]
mov r15, qword [rsp + 0x158]
movss xmm7, dword [0x1800e26e0]
test eax, eax
jne 0x180005371
movss xmm3, dword [r14 + 0x381c]
movss xmm2, dword [r14 + 0x3820]
addss xmm3, xmm3
mov rcx, qword [0x180148c20]
addss xmm2, xmm2
movss xmm0, dword [0x180148c6c]
addss xmm0, xmm7
mov rax, qword [rcx + 0x3ef8]
subss xmm2, dword [0x1800e2698]
addss xmm3, xmm0
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movss xmm1, dword [rax + 0x20]
movss xmm0, dword [rax + 0x24]
subss xmm1, dword [rax + 0x84]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm3, xmm1
addss xmm0, xmm2
movss dword [rax + 0x100], xmm3
movss dword [rax + 0x104], xmm0
call fcn.18002b4d0
mov eax, dword [0x1800e0700]
movss xmm1, dword [0x180148398]
movss xmm0, dword [r14 + 0x381c]
subss xmm1, xmm7
mulss xmm0, dword [0x1800e2628]
mov dword [rbp + 0x98], eax
movzx eax, byte [0x1800e0704]
xor byte [rbp + 0x99], 0x33
xor al, 0x36
xor byte [rbp + 0x9a], 0x34
subss xmm1, xmm0
xor byte [rbp + 0x9b], 0x35
cmp byte [0x1800e07a9], dil
mov byte [rbp + 0x9c], al
movzx eax, word [0x1800e07a8]
mulss xmm1, dword [0x1800e2574]
mov dword [rbp + 0xa4], 0x43d20000
mov byte [rbp + 0x98], 0x4d
mov word [rbp + 0x90], ax
movss dword [rbp + 0xa0], xmm1
je 0x18000434c
xor byte [rbp + 0x91], 0x33
mov byte [rbp + 0x90], 0x44
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x90]
call fcn.180022820
cmp byte [0x1800e0a85], dil
movsd xmm0, qword [0x1800e0a78]
movzx eax, word [0x1800e0a84]
mov ecx, dword [0x1800e0a80]
movdqa xmm6, xmmword [str.2222222222222222]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x48], ecx
je 0x180004531
mov r8d, edi
cmp esi, 2
jl 0x1800044ed
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1800e0a78]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180004500
lea rdx, [0x180148b95]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
cmp byte [0x1800dba65], dil
movsd xmm0, qword [str.dZGT__]
movzx eax, word [0x1800dba64]
mov ecx, dword [str.ySYU_]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x48], ecx
je 0x180004701
mov r8d, edi
cmp esi, 2
jl 0x1800046c1
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.dZGT__]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x1800046d0
lea rdx, [0x180148b94]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
cmp byte [0x1800e0cbb], dil
movsd xmm0, qword [str.sZYWYC]
mov ecx, dword [0x1800e0cb8]
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], ecx
je 0x1800048ba
mov r8d, edi
cmp esi, 2
jl 0x180004881
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.sZYWYC]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
jmp 0x1800048ba
lea r9, [rsp + 0x40]
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x180004890
lea rdx, [0x180148b96]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
movsd xmm0, qword [0x1800e04e0]
mov r8d, edi
movzx eax, byte [0x1800e04ec]
mov ecx, dword [0x1800e04e8]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x4c], al
mov dword [rsp + 0x48], ecx
cmp esi, 2
jl 0x180004a3c
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1800e04e0]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x180004a50
lea rdx, [0x180148b97]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
cmp byte [0x1800e058d], dil
movups xmm2, xmmword [str._VWZ__]
movzx eax, word [0x1800e058c]
mov edx, dword [str._00_G]
movups xmmword [rsp + 0x60], xmm2
mov dword [rsp + 0x70], edx
mov word [rsp + 0x74], ax
je 0x180004d21
mov r8d, edi
cmp esi, 2
jl 0x180004cde
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movdqa xmm3, xmmword [0x1800e2a60]
psubd xmm2, xmm0
movd xmm1, dword [rsp + 0x6c]
andps xmm2, xmm13
packuswb xmm2, xmm2
mov r8d, 0x14
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
xorps xmm2, xmm1
movdqa xmm1, xmm3
pmuldq xmm0, xmm9
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x6c], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, edx
pmulld xmm0, xmm14
psubd xmm3, xmm0
movd xmm0, ecx
andps xmm3, xmm13
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
xorps xmm3, xmm1
movd dword [rsp + 0x70], xmm3
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x16
jl 0x180004cf0
lea rdx, [0x180148b9d]
lea rcx, [rsp + 0x60]
call fcn.180047dd0
mov rcx, qword [0x180148c20]
lea r9, str.Head
lea rdx, [0x180148b98]
mov dword [rsp + 0x20], 3
mov rax, qword [rcx + 0x3ef8]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movzx ecx, word [0x1800e0d14]
mov word [rbp + 0x94], cx
xor cl, 0x36
xor byte [rbp + 0x95], 0x37
movss xmm0, dword [rax + 0x24]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
mov byte [rbp + 0x94], cl
lea rcx, [rbp + 0x90]
addss xmm0, dword [0x1800e2738]
movss dword [rax + 0x104], xmm0
mov eax, dword [0x1800e0d10]
mov dword [rbp + 0x90], eax
movzx eax, byte [0x1800e0d16]
xor byte [rbp + 0x91], 0x33
xor al, 0x38
xor byte [rbp + 0x92], 0x34
xor byte [rbp + 0x93], 0x35
mov byte [rbp + 0x96], al
mov byte [rbp + 0x90], 0x48
call fcn.18004a4a0
movzx ecx, word [0x1800e05fc]
lea r9, str.Left_Click
mov eax, dword [0x1800e05f8]
lea rdx, [0x180148ca4]
mov dword [rbp + 0x90], eax
movzx eax, byte [0x1800e05fe]
xor byte [rbp + 0x91], 0x33
xor al, 0x38
xor byte [rbp + 0x92], 0x34
xor byte [rbp + 0x93], 0x35
mov word [rbp + 0x94], cx
xor cl, 0x36
xor byte [rbp + 0x95], 0x37
mov byte [rbp + 0x94], cl
lea rcx, [rbp + 0x90]
mov byte [rbp + 0x90], 0x41
mov byte [rbp + 0x96], al
mov dword [rsp + 0x20], 8
call fcn.18004a4a0
call fcn.180022910
call fcn.18002b600
movss xmm1, dword [0x1800e27a0]
movaps xmm0, xmm8
call fcn.18002b1d0
call fcn.18002b4d0
movss xmm1, dword [0x180148398]
lea r8, [rbp + 0x90]
movss xmm0, dword [r14 + 0x381c]
subss xmm1, xmm7
mulss xmm0, dword [0x1800e2628]
lea rdx, [0x1800db84a]
lea rcx, [0x1800dba00]
mov dword [rbp + 0x94], 0x43d20000
subss xmm1, xmm0
mulss xmm1, dword [0x1800e2574]
movss dword [rbp + 0x90], xmm1
call fcn.180022820
cmp byte [0x1800e0bd9], dil
movsd xmm0, qword [0x1800e0bd0]
movzx eax, word [0x1800e0bd8]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x180004f2a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x52
mov dword [rsp + 0x30], edi
lea rax, [rbp + 0x90]
lea rbx, [0x1800dba04]
mov dword [rbp + 0x90], 0x12c
mov qword [rsp + 0x28], rbx
lea r9, [rbp + 0x98]
lea r8, [0x180120c14]
mov qword [rsp + 0x20], rax
mov edx, 4
mov dword [rbp + 0x98], 1
lea rcx, [rsp + 0x40]
call fcn.18004aa30
cmp byte [0x1800e0539], dil
movsd xmm0, qword [0x1800e0530]
movzx eax, word [0x1800e0538]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x180004fcc
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x52
mov dword [rsp + 0x30], edi
lea rax, [rbp + 0x90]
mov qword [rsp + 0x28], rbx
lea r9, [rbp + 0x98]
lea r8, [0x180120c18]
mov qword [rsp + 0x20], rax
mov edx, 4
mov dword [rbp + 0x90], 0x64
lea rcx, [rsp + 0x40]
mov dword [rbp + 0x98], 1
call fcn.18004aa30
cmp byte [0x1800e08d9], dil
mov rcx, qword [0x180148c20]
mov rax, qword [rcx + 0x3ef8]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movss xmm0, dword [rax + 0x24]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm0, dword [0x1800e26f0]
movss dword [rax + 0x104], xmm0
movsd xmm0, qword [0x1800e08d0]
movzx eax, word [0x1800e08d8]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x1800050a7
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x46
lea rax, str._.3f
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x98]
lea rax, [rbp + 0x90]
mov dword [rbp + 0x90], 0x43480000
lea r8, [0x180120c10]
mov qword [rsp + 0x20], rax
mov edx, 8
mov dword [rbp + 0x98], 0x3f800000
lea rcx, [rsp + 0x40]
call fcn.18004aa30
movsd xmm0, qword [str.a_ZB_]
mov r8d, edi
movzx eax, byte [0x1800e076c]
mov ecx, dword [0x1800e0768]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x4c], al
mov dword [rsp + 0x48], ecx
cmp esi, 2
jl 0x180005265
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.a_ZB_]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x180005270
mov dword [rsp + 0x30], edi
lea rax, [rbp + 0x90]
mov qword [rsp + 0x28], rbx
lea r9, [rbp + 0x98]
lea r8, [0x180120c1c]
mov qword [rsp + 0x20], rax
mov edx, 4
mov dword [rbp + 0x90], 0x19
lea rcx, [rsp + 0x40]
mov dword [rbp + 0x98], 1
call fcn.18004aa30
cmp byte [0x1800e0621], dil
movsd xmm0, qword [0x1800e0618]
movzx eax, word [0x1800e0620]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x18000533c
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x46
mov r8d, 0x10228
lea rdx, [0x180120bc8]
lea rcx, [rsp + 0x40]
call fcn.18004bb30
mov eax, dword [0x180120c1c]
mov dword [0x180120c0c], eax
call fcn.180022910
call fcn.18002b600
mov eax, dword [0x180149088]
jmp 0x180005379
movdqa xmm6, xmmword [str.2222222222222222]
mov rbx, qword [rsp + 0x170]
cmp eax, 1
jne 0x180006b74
movss xmm3, dword [r14 + 0x381c]
movss xmm2, dword [r14 + 0x3820]
addss xmm3, xmm3
mov rcx, qword [0x180148c20]
addss xmm2, xmm2
movss xmm0, dword [0x180148c6c]
addss xmm0, xmm7
mov rax, qword [rcx + 0x3ef8]
subss xmm2, dword [0x1800e2698]
addss xmm3, xmm0
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movss xmm1, dword [rax + 0x20]
movss xmm0, dword [rax + 0x24]
subss xmm1, dword [rax + 0x84]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm3, xmm1
addss xmm0, xmm2
movss dword [rax + 0x100], xmm3
movss dword [rax + 0x104], xmm0
call fcn.18002b4d0
mov eax, dword [0x1800e0700]
lea r8, [rbp + 0xa0]
movss xmm1, dword [0x180148398]
lea rdx, [rbp + 0x98]
movss xmm0, dword [r14 + 0x381c]
subss xmm1, xmm7
mulss xmm0, dword [0x1800e2628]
lea rcx, [rbp + 0x90]
mov dword [rbp + 0x98], eax
movzx eax, byte [0x1800e0704]
xor byte [rbp + 0x99], 0x33
xor al, 0x36
xor byte [rbp + 0x9a], 0x34
subss xmm1, xmm0
xor byte [rbp + 0x9b], 0x35
cmp byte [0x1800e07a9], dil
mov byte [rbp + 0x9c], al
movzx eax, word [0x1800e07a8]
mulss xmm1, dword [0x1800e2574]
mov dword [rbp + 0xa4], 0x43d20000
mov byte [rbp + 0x98], 0x4d
mov word [rbp + 0x90], ax
movss dword [rbp + 0xa0], xmm1
je 0x1800054c2
xor byte [rbp + 0x91], 0x33
mov byte [rbp + 0x90], 0x44
call fcn.180022820
movzx eax, word [0x1800e0aec]
mov r8d, edi
movsd xmm0, qword [str.w_UWZR]
mov ecx, dword [0x1800e0ae8]
movdqa xmm6, xmmword [str.2222222222222222]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x1800e0aee]
mov byte [rsp + 0x4e], al
mov dword [rsp + 0x48], ecx
movsd qword [rsp + 0x40], xmm0
cmp esi, 2
jl 0x18000564c
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.w_UWZR]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x180005660
lea rdx, [0x180117478]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
movzx ecx, word [0x1800e0610]
lea rdx, [0x180148a66]
movzx eax, byte [0x1800e0612]
movsd xmm0, qword [0x1800e0608]
xor al, 0x3c
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov word [rsp + 0x48], cx
xor cl, 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x45
mov byte [rsp + 0x4a], al
call fcn.180047dd0
movzx eax, byte [0x1800e0c10]
lea rdx, [0x180148b4c]
movsd xmm0, qword [str.zVUQ]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x48
call fcn.180047dd0
cmp byte [0x1800e0a61], dil
lea rdx, [0x180148b4d]
movsd xmm0, qword [str.dZQB]
lea rcx, [rsp + 0x40]
movzx eax, word [0x1800e0a60]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x1800057c3
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x56
call fcn.180047dd0
movzx eax, byte [0x1800e0598]
lea rdx, [0x180148a67]
movsd xmm0, qword [str.aXQYSCWW:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x53
call fcn.180047dd0
movzx eax, byte [0x1800e09e8]
lea rdx, [0x180148a65]
movsd xmm0, qword [str.vZGAWY_:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x44
call fcn.180047dd0
cmp byte [0x1800e0951], dil
lea rdx, [0x180148a9c]
movsd xmm0, qword [0x1800e0948]
lea rcx, [rsp + 0x40]
movzx eax, word [0x1800e0950]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x1800058d1
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x48
call fcn.180047dd0
movzx eax, byte [0x1800dba50]
lea rdx, [0x180148a64]
movsd xmm0, qword [str.a_UEZV:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x53
call fcn.180047dd0
movzx ecx, word [0x1800e0678]
lea rdx, [0x180148a9d]
movzx eax, byte [0x1800e067a]
movsd xmm0, qword [str.a__B]
xor al, 0x3c
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov word [rsp + 0x48], cx
xor cl, 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x53
mov byte [rsp + 0x4a], al
call fcn.180047dd0
cmp byte [0x1800dba65], dil
movsd xmm0, qword [str.dZGT__]
movzx eax, word [0x1800dba64]
mov ecx, dword [str.ySYU_]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x48], ecx
je 0x180005b51
mov r8d, edi
cmp esi, 2
jl 0x180005b15
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.dZGT__]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180005b20
lea rdx, [0x180148b4e]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
call fcn.180022910
call fcn.18002b600
movss xmm1, dword [0x1800e27a0]
movaps xmm0, xmm8
call fcn.18002b1d0
call fcn.18002b4d0
movss xmm1, dword [0x180148398]
lea r8, [rbp + 0x90]
movss xmm0, dword [r14 + 0x381c]
subss xmm1, xmm7
mulss xmm0, dword [0x1800e2628]
lea rdx, [0x1800db84a]
lea rcx, [0x1800dba00]
mov dword [rbp + 0x94], 0x43d20000
subss xmm1, xmm0
mulss xmm1, dword [0x1800e2574]
movss dword [rbp + 0x90], xmm1
call fcn.180022820
cmp byte [0x180148b4e], dil
je 0x180006422
cmp byte [0x1800e0bcb], dil
movsd xmm0, qword [0x1800e0bc0]
mov ecx, dword [0x1800e0bc8]
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], ecx
je 0x180005d8a
mov r8d, edi
cmp esi, 2
jl 0x180005d53
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1800e0bc0]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
jmp 0x180005d8a
lea r9, [rsp + 0x40]
nop dword [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x180005d60
mov r8d, 0x10228
lea rdx, [0x180120bf8]
lea rcx, [rsp + 0x40]
call fcn.18004bb30
cmp byte [0x1800e06bd], dil
movsd xmm0, qword [0x1800e06b0]
movzx eax, word [0x1800e06bc]
mov ecx, dword [0x1800e06b8]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x48], ecx
je 0x180005f61
mov r8d, edi
cmp esi, 2
jl 0x180005f20
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1800e06b0]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180005f30
mov r8d, 0x10228
lea rdx, [0x180120be8]
lea rcx, [rsp + 0x40]
call fcn.18004bb30
mov rcx, qword [0x180148c20]
mov rax, qword [rcx + 0x3ef8]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
cmp byte [rax + 0xbb], dil
jne 0x180005fd7
lea r8, str.Skeleton_Colors
cmp r8, 0xffffffffffffffff
jae 0x180005fce
nop word [rax + rax]
movzx ecx, byte [r8]
test cl, cl
je 0x180005fce
lea rax, [r8 + 1]
cmp cl, 0x23
jne 0x180005fc5
cmp byte [rax], cl
je 0x180005fce
mov r8, rax
cmp rax, 0xffffffffffffffff
jb 0x180005fb0
movaps xmm3, xmm8
call fcn.180048f30
movzx eax, byte [0x1800e0648]
mov r8d, edi
mov byte [rsp + 0x70], al
movups xmm2, xmmword [0x1800e0638]
movups xmmword [rsp + 0x60], xmm2
cmp esi, 2
jl 0x1800061a6
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
movdqa xmm2, xmm15
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
movd xmm1, dword [rsp + 0x6c]
psubd xmm2, xmm0
andps xmm2, xmm13
movd xmm0, ecx
packuswb xmm2, xmm2
mov r8d, 0x10
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x6c], xmm2
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x1800061b1
mov r8d, 0x10228
lea rdx, [0x180120bb8]
lea rcx, [rsp + 0x60]
call fcn.18004bb30
movzx eax, word [0x1800e09c8]
mov r8d, edi
mov word [rsp + 0x70], ax
movzx eax, byte [0x1800e09ca]
mov byte [rsp + 0x72], al
movups xmm2, xmmword [0x1800e09b8]
movups xmmword [rsp + 0x60], xmm2
cmp esi, 2
jl 0x1800063d5
movd eax, xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd ecx, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x60], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x64]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
pmuldq xmm0, xmm9
movdqa xmm1, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x64], xmm2
movdqa xmm2, xmm12
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x68]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm15
xorps xmm2, xmm1
punpckhdq xmm0, xmm15
pmuldq xmm0, xmm9
movdqa xmm1, xmm15
punpckldq xmm1, xmm15
pmuldq xmm1, xmm9
movd dword [rsp + 0x68], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm14
psubd xmm15, xmm0
movd xmm1, dword [rsp + 0x6c]
andps xmm15, xmm13
packuswb xmm15, xmm15
mov r8d, 0x10
packuswb xmm15, xmm15
movd xmm0, ecx
paddb xmm15, xmm0
xorps xmm15, xmm1
movd dword [rsp + 0x6c], xmm15
mov eax, r8d
lea r9, [rsp + 0x60]
add r9, rax
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0x13
jl 0x1800063e0
lea rdx, [0x180120b98]
lea rcx, [rsp + 0x60]
jmp 0x18000665d
cmp byte [0x1800e0921], dil
lea rdx, [0x180148350]
movsd xmm0, qword [0x1800e0918]
lea rcx, [rsp + 0x40]
movzx eax, word [0x1800e0920]
mov r8d, 0x10228
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
je 0x180006489
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
xor byte [rsp + 0x48], 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x40], 0x42
call fcn.18004bb30
movzx eax, word [0x1800e080c]
mov r8d, edi
movsd xmm0, qword [str.aXQYSCWW]
mov ecx, dword [0x1800e0808]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x1800e080e]
mov byte [rsp + 0x4e], al
mov dword [rsp + 0x48], ecx
movsd qword [rsp + 0x40], xmm0
cmp esi, 2
jl 0x18000660b
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.aXQYSCWW]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x180006620
lea rdx, [0x180148340]
lea rcx, [rsp + 0x40]
mov r8d, 0x10228
call fcn.18004bb30
movzx eax, byte [0x1800dba50]
lea rdx, [0x180120bd8]
movsd xmm0, qword [str.a_UEZV:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
mov r8d, 0x10228
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x53
call fcn.18004bb30
movzx eax, byte [0x1800e0968]
lea rdx, [0x180148310]
movsd xmm0, qword [str.dZQBzV:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
mov r8d, 0x10228
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x56
call fcn.18004bb30
movzx eax, byte [0x1800e0910]
lea rdx, [0x180148310]
movsd xmm0, qword [str.VQTRuWA:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
mov r8d, 0x10228
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x64
call fcn.18004bb30
movsd xmm0, qword [str.tZXYSS]
mov r8d, edi
movzx eax, byte [0x1800e0b0c]
mov ecx, dword [0x1800e0b08]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x4c], al
mov dword [rsp + 0x48], ecx
cmp esi, 2
jl 0x1800068e7
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm10
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm11
pmulld xmm0, xmm14
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm13
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.tZXYSS]
xorps xmm1, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm12
xorps xmm2, xmm1
punpckhdq xmm0, xmm12
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
movdqa xmm2, xmm12
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x180006900
mov r8d, 0x10228
lea rdx, [0x180148330]
lea rcx, [rsp + 0x40]
call fcn.18004bb30
mov rcx, qword [0x180148c20]
cmp byte [0x180148b4e], dil
mov rax, qword [rcx + 0x3ef8]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movss xmm0, dword [rax + 0x24]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
je 0x18000698b
addss xmm0, dword [0x1800e2750]
jmp 0x180006993
addss xmm0, dword [0x1800e2740]
movss dword [rax + 0x104], xmm0
lea r9, str.Bottom
movzx eax, byte [0x1800e0d60]
lea rdx, [0x180120c08]
movsd xmm0, qword [str.ZZPbNH:]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
xor al, 0x3a
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x4c
mov dword [rsp + 0x20], 2
call fcn.18004a4a0
cmp byte [0x1800e08cf], dil
mov rax, qword [str.pLaOG_9tb]
mov qword [rbp + 0x90], rax
je 0x180006b3a
mov r8d, edi
cmp esi, 2
jl 0x180006b03
movd eax, xmm6
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
movdqa xmm2, xmm11
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rbp + 0x90]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm10
xorps xmm2, xmm1
punpckhdq xmm0, xmm10
movd dword [rbp + 0x90], xmm2
movdqa xmm1, xmm10
pmuldq xmm0, xmm9
movdqa xmm2, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rbp + 0x94]
pmulld xmm0, xmm14
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm13
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x94], xmm2
jmp 0x180006b3a
lea r9, [rbp + 0x90]
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x32
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x180006b10
lea r9, str.Corner
mov dword [rsp + 0x20], 3
lea rdx, [0x180148b90]
lea rcx, [rbp + 0x90]
call fcn.18004a4a0
call fcn.180022910
call fcn.18002b600
mov eax, dword [0x180149088]
movdqa xmm6, xmmword [str.2222222222222222]
movaps xmm15, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0x120]
cmp eax, 2
jne 0x180006ed9
movss xmm3, dword [r14 + 0x381c]
movss xmm2, dword [r14 + 0x3820]
addss xmm3, xmm3
mov rcx, qword [0x180148c20]
addss xmm2, xmm2
movss xmm0, dword [0x180148c6c]
addss xmm0, xmm7
mov rax, qword [rcx + 0x3ef8]
subss xmm2, dword [0x1800e2698]
addss xmm3, xmm0
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ef8]
movss xmm1, dword [rax + 0x20]
movss xmm0, dword [rax + 0x24]
subss xmm1, dword [rax + 0x84]
subss xmm0, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm3, xmm1
addss xmm0, xmm2
movss dword [rax + 0x100], xmm3
movss dword [rax + 0x104], xmm0
call fcn.18002b4d0
mov eax, dword [0x1800e0700]
lea r8, [rbp + 0x98]
movss xmm1, dword [0x180148398]
lea rdx, [rbp + 0x90]
movss xmm0, dword [r14 + 0x381c]
subss xmm1, xmm7
mulss xmm0, dword [0x1800e2628]
lea rcx, [0x1800db974]
mov dword [rbp + 0x90], eax
movzx eax, byte [0x1800e0704]
xor byte [rbp + 0x91], 0x33
xor al, 0x36
xor byte [rbp + 0x92], 0x34
subss xmm1, xmm0
xor byte [rbp + 0x93], 0x35
mov dword [rbp + 0x9c], 0x43d20000
mov byte [rbp + 0x90], 0x4d
mov byte [rbp + 0x94], al
mulss xmm1, dword [0x1800e2574]
movss dword [rbp + 0x98], xmm1
call fcn.180022820
movzx ecx, word [0x1800e07b8]
lea rdx, [0x180148b9e]
movzx eax, byte [0x1800e07ba]
movsd xmm0, qword [str.D_M_U]
xor al, 0x3c
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x33
xor byte [rsp + 0x42], 0x34
xor byte [rsp + 0x43], 0x35
xor byte [rsp + 0x44], 0x36
xor byte [rsp + 0x45], 0x37
xor byte [rsp + 0x46], 0x38
xor byte [rsp + 0x47], 0x39
mov word [rsp + 0x48], cx
xor cl, 0x3a
xor byte [rsp + 0x49], 0x3b
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x76
mov byte [rsp + 0x4a], al
call fcn.180047dd0
movsd xmm0, qword [str.aGFPWZ]
movzx eax, byte [0x1800e0a04]
mov ecx, dword [0x1800e0a00]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x4c], al
mov dword [rsp + 0x48], ecx
cmp esi, 2
jl 0x180006e83
movdqa xmm1, xmm11
movd eax, xmm6
punpckldq xmm1, xmm11
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
mov edi, 0xc
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm10
pmulld xmm0, xmm14
psubd xmm11, xmm0
punpckldq xmm1, xmm10
pmuldq xmm1, xmm9
andps xmm11, xmm13
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm0, dword [str.aGFPWZ]
xorps xmm11, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm11
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm14
psubd xmm10, xmm0
movd xmm0, eax
andps xmm10, xmm13
packuswb xmm10, xmm10
packuswb xmm10, xmm10
paddb xmm10, xmm0
movdqa xmm0, xmm12
punpckhdq xmm0, xmm12
xorps xmm10, xmm1
movdqa xmm1, xmm12
pmuldq xmm0, xmm9
punpckldq xmm1, xmm12
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm10
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm14
psubd xmm12, xmm0
movd xmm0, eax
andps xmm12, xmm13
packuswb xmm12, xmm12
packuswb xmm12, xmm12
paddb xmm12, xmm0
xorps xmm12, xmm1
movd dword [rsp + 0x48], xmm12
mov eax, edi
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax]
mov eax, 0x5397829d
lea r8, [r8 + 1]
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, dil
inc edi
sub al, cl
add al, 0x32
xor byte [r8 - 1], al
cmp edi, 0xd
jl 0x180006e90
lea rdx, [0x18011747a]
lea rcx, [rsp + 0x40]
call fcn.180047dd0
call fcn.180022910
call fcn.18002b600
mov ecx, 1
call fcn.18001b740
call fcn.180027890
movaps xmm14, xmmword [rsp + 0xc0]
movaps xmm13, xmmword [rsp + 0xd0]
movaps xmm12, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm10, xmmword [rsp + 0x100]
movaps xmm9, xmmword [rsp + 0x110]
movaps xmm6, xmmword [rsp + 0x140]
mov r14, qword [rsp + 0x160]
mov rsi, qword [rsp + 0x168]
movaps xmm7, xmmword [rsp + 0x130]
add rsp, 0x178
pop rdi
pop rbp
ret