Function at 0x18001a340
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0xa8]
sub rsp, 0x190
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
mov rax, qword [0x18010c040]
xor rax, rsp
mov qword [rbp + 8], rax
xor r12d, r12d
mov edi, r12d
mov dword [rbp - 0x58], r12d
mov rax, qword [0x18020b828]
test rax, rax
jne 0x18001a3d3
xor r8d, r8d
lea rdx, [0x1800eaa38]
lea rcx, str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call fcn.1800c5568
mov rax, qword [0x18020b828]
movss xmm0, dword [rax + 0x2ef8]
xorps xmm13, xmm13
ucomiss xmm0, xmm13
jp 0x18001a3f9
jne 0x18001a3f9
cmp byte [0x18010cc60], dil
sete al
mov byte [0x18010cc60], al
jmp 0x18001a400
movzx eax, byte [0x18010cc60]
test al, al
je 0x180021282
movsd xmm0, qword [str.d_MNRRZM_]
movsd qword [rsp + 0x40], xmm0
movzx eax, byte [0x1800e6e20]
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.18006f100
mov dword [rbp - 0x50], 0x43160000
mov dword [rbp - 0x4c], 0x41f00000
mov eax, dword [0x1800e6db0]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1800e6db4]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1800e6db6]
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x3c
xor al, 0x3d
mov byte [rsp + 0x46], al
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
test al, al
je 0x18001a4d2
mov dword [0x18020b90c], r12d
mov dword [0x18020b8dc], r12d
mov byte [0x18020b8d8], dil
movss xmm8, dword [0x1800f89cc]
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.180076c10
mov dword [rbp - 0x50], 0x43160000
mov dword [rbp - 0x4c], 0x41f00000
mov rax, qword [str.aQJOZPN___XJTR]
mov qword [rsp + 0x40], rax
movdqa xmm9, xmmword [0x1800f8b90]
movdqa xmm12, xmmword [0x1800f8c00]
movdqa xmm10, xmmword [0x1800f8b00]
movdqa xmm6, xmmword [0x1800f8bf0]
movdqa xmm7, xmmword [0x1800f8a70]
movdqa xmm11, xmmword [0x1800f8a90]
mov esi, dword [0x18010c090]
cmp byte [0x1800e6e2f], dil
je 0x18001a651
cmp esi, 2
jl 0x18001a614
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, dword [rsp + 0x40]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, dword [rsp + 0x44]
xorps xmm1, xmm0
movd dword [rsp + 0x44], xmm1
jmp 0x18001a651
lea r9, [rsp + 0x40]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001a620
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
mov dword [rsp + 0x40], 0x43160000
mov dword [rsp + 0x44], 0x41f00000
movsd xmm0, qword [0x1800e6ea0]
movzx edx, byte [0x1800e6ea8]
movaps xmm1, xmm8
movsd qword [rbp - 0x50], xmm0
movaps xmm0, xmm13
test al, al
je 0x18001a6a7
mov dword [0x18020b90c], 1
mov dword [0x18020b8dc], r12d
mov byte [0x18020b8d8], dil
call fcn.180076c10
mov byte [rbp - 0x50], 0x45
xor byte [rbp - 0x4f], 0x38
xor byte [rbp - 0x4e], 0x39
xor byte [rbp - 0x4d], 0x3a
xor byte [rbp - 0x4c], 0x3b
xor byte [rbp - 0x4b], 0x3c
xor byte [rbp - 0x4a], 0x3d
xor byte [rbp - 0x49], 0x3e
xor dl, 0x3f
mov byte [rbp - 0x48], dl
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x50]
call fcn.180099140
test al, al
je 0x18001a6ff
mov ecx, 2
mov dword [0x18020b90c], ecx
mov dword [0x18020b8dc], r12d
mov byte [0x18020b8d8], dil
jmp 0x18001a705
mov ecx, dword [0x18020b90c]
test ecx, ecx
je 0x18001fd4b
sub ecx, 1
je 0x18001d2f6
cmp ecx, 1
jne case.default.0x18001abe4
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
mov eax, dword [0x1800e6b5c]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1800e6b60]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1800e6b62]
mov byte [rsp + 0x40], 0x50
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x3c
xor al, 0x3d
mov byte [rsp + 0x46], al
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
movzx edx, byte [0x1800e6e36]
movaps xmm0, xmm13
movaps xmm1, xmm8
test al, al
mov eax, dword [0x1800e6e30]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1800e6e34]
mov word [rsp + 0x44], ax
je 0x18001a7bc
mov dword [0x18020b8dc], r12d
call fcn.180076c10
mov byte [rsp + 0x40], 0x57
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor dl, 0x3d
mov byte [rsp + 0x46], dl
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
test al, al
je 0x18001a802
mov dword [0x18020b8dc], 1
movaps xmm1, xmm8
movaps xmm0, xmm13
call fcn.180076c10
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
mov rax, qword [str.gQZQZDX_qYJNelT_T_9C]
mov qword [rsp + 0x40], rax
cmp byte [0x1800e698f], dil
je 0x18001a951
cmp esi, 2
jl 0x18001a90d
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm12
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x18001a951
lea r9, [rsp + 0x40]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001a920
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
test al, al
je 0x18001a96d
mov dword [0x18020b8dc], 2
movaps xmm1, xmm8
movaps xmm0, xmm13
call fcn.180076c10
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
mov rax, qword [str.a_QSXPX_r_IVTUIM_]
mov qword [rsp + 0x40], rax
cmp byte [0x1800e6e9f], dil
je 0x18001aab1
cmp esi, 2
jl 0x18001aa78
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm12
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x18001aab1
lea r9, [rsp + 0x40]
mov r8d, r12d
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001aa80
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
movzx edx, byte [0x1800e6caa]
movaps xmm0, xmm13
movaps xmm1, xmm8
test al, al
mov eax, dword [0x1800e6ca4]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1800e6ca8]
mov word [rsp + 0x44], ax
je 0x18001ab00
mov dword [0x18020b8dc], 3
call fcn.180076c10
mov byte [rsp + 0x40], 0x50
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor dl, 0x3d
mov byte [rsp + 0x46], dl
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
mov dword [rbp - 0x50], 0x42a00000
mov dword [rbp - 0x4c], 0x41c80000
movzx edx, byte [0x1800e6faa]
movaps xmm0, xmm13
movaps xmm1, xmm8
test al, al
mov eax, dword [str.d_KLN]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1800e6fa8]
mov word [rsp + 0x44], ax
je 0x18001ab79
mov dword [0x18020b8dc], 4
call fcn.180076c10
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor dl, 0x3d
mov byte [rsp + 0x46], dl
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
test al, al
je 0x18001abc2
mov eax, 5
mov dword [0x18020b8dc], eax
jmp 0x18001abc8
mov eax, dword [0x18020b8dc]
cmp eax, 5
ja case.default.0x18001abe4
cdqe
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x21314]
add rcx, rdx
jmp rcx
movups xmm0, xmmword [str.rPNesS]
movups xmmword [rsp + 0x40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x18001ad41
cmp esi, 2
jl 0x18001ad05
mov edx, r12d
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rsp + 0x44]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x18001ac20
jmp 0x18001ad41
lea r9, [rsp + 0x40]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x18001ad10
lea rdx, [0x18020b8ff]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movups xmm0, xmmword [str.sQJ_YPX]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e69c0]
mov word [rbp - 0x28], ax
cmp byte [0x1800e69c1], dil
je 0x18001aec1
mov r8d, r12d
cmp esi, 2
jl 0x18001ae7b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001ad90
cmp r8d, 0x12
jge 0x18001aec1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001ae90
lea rdx, [0x18020b900]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movups xmm0, xmmword [0x1800e6b38]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [0x1800e6b48]
mov dword [rbp - 0x28], eax
movzx eax, byte [0x1800e6b4c]
mov byte [rbp - 0x24], al
mov r8d, r12d
cmp esi, 2
jl 0x18001affb
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001af10
cmp r8d, 0x15
jge 0x18001b041
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x18001b010
lea rdx, [0x18020b869]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movups xmm0, xmmword [str.QUVeQR]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e69e8]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [0x1800e69f0]
mov dword [rbp - 0x20], eax
movzx eax, word [0x1800e69f4]
mov word [rbp - 0x1c], ax
cmp byte [0x1800e69f5], dil
je 0x18001b1e1
mov r8d, r12d
cmp esi, 2
jl 0x18001b19b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001b0b0
cmp r8d, 0x1e
jge 0x18001b1e1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x18001b1b0
lea rdx, [0x18020b902]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movups xmm0, xmmword [str.rPNeyS_R9a]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6fa0]
mov word [rbp - 0x28], ax
cmp byte [0x1800e6fa1], dil
je 0x18001b361
mov r8d, r12d
cmp esi, 2
jl 0x18001b31b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001b230
cmp r8d, 0x12
jge 0x18001b361
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001b330
lea rdx, [0x18020b86a]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movups xmm0, xmmword [0x1800e6b10]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6b20]
movsd qword [rbp - 0x28], xmm0
cmp byte [0x1800e6b27], dil
je 0x18001b4d1
cmp esi, 2
jl 0x18001b497
mov edx, r12d
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x18001b3b2
jmp 0x18001b4d1
lea r9, [rbp - 0x38]
mov r8d, r12d
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x18001b4a0
lea rdx, [0x18020b86b]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movsd xmm0, qword [str.sWLXWY]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6eb8]
mov dword [rsp + 0x48], eax
cmp byte [0x1800e6ebb], dil
je 0x18001b621
mov r15d, r12d
cmp esi, 2
jl 0x18001b5e3
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm12
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [str.sWLXWY]
xorps xmm7, xmm0
movd dword [rsp + 0x40], xmm7
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r15d, 8
movsxd rax, r15d
lea r8, [rsp + 0x40]
add r8, rax
nop
mov eax, 0x94f2095
imul r15d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r15b
xor byte [r8], cl
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0xc
jl 0x18001b5f0
lea rdx, [0x18020b86c]
lea rcx, [rsp + 0x40]
call fcn.18009a290
jmp case.default.0x18001abe4
cmp qword [0x18020b8e8], rdi
je 0x18001b7d1
movups xmm0, xmmword [0x1800e6f60]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6f70]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [str.__S]
mov dword [rbp - 0x20], eax
movzx eax, byte [0x1800e6f7c]
mov byte [rbp - 0x1c], al
mov r8d, r12d
cmp esi, 2
jl 0x18001b77b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001b690
cmp r8d, 0x1d
jge 0x18001b7c1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1d
jl 0x18001b790
lea rdx, [0x18020b8b4]
lea rcx, [rbp - 0x38]
call fcn.18009a290
cmp qword [0x18020b8e0], rdi
je 0x18001b971
movups xmm0, xmmword [str.uMUVH]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6fd0]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [0x1800e6fd8]
mov dword [rbp - 0x20], eax
cmp byte [0x1800e6fdb], dil
je 0x18001b961
mov r8d, r12d
cmp esi, 2
jl 0x18001b91b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001b830
cmp r8d, 0x1c
jge 0x18001b961
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x18001b930
lea rdx, [0x18020b8b5]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movsd xmm0, qword [0x1800e6b00]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6b08]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6b09], dil
je 0x18001b9c6
mov byte [rsp + 0x40], 0x4e
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
lea rdx, [0x18020b904]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [0x1800e69a0]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e69a8]
mov word [rsp + 0x48], ax
cmp byte [0x1800e69a9], dil
je 0x18001ba2c
mov byte [rsp + 0x40], 0x4e
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
lea rdx, [0x18020b901]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [0x1800e6c80]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6c88]
mov word [rsp + 0x48], ax
lea rdx, [0x18020b906]
lea rcx, [rsp + 0x40]
cmp byte [0x1800e6c89], dil
je 0x18001ba9e
mov byte [rsp + 0x40], 0x4e
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
call fcn.18009a290
movzx eax, word [0x1800e6ec8]
mov word [rsp + 0x48], ax
movsd xmm0, qword [str.eYIS_]
movzx eax, byte [0x1800e6eca]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x52
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18020b903]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movups xmm0, xmmword [0x1800e6a48]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6a58]
mov word [rbp - 0x28], ax
cmp byte [0x1800e6a59], dil
je 0x18001bc81
mov r8d, r12d
cmp esi, 2
jl 0x18001bc3b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001bb50
cmp r8d, 0x12
jge 0x18001bc81
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001bc50
lea rdx, [0x18020b905]
lea rcx, [rbp - 0x38]
call fcn.18009a290
cmp byte [0x18020b905], dil
je case.default.0x18001abe4
mov eax, dword [str.vUVOUH]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1800e6e68]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1800e6e6a]
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x3c
xor al, 0x3d
mov byte [rsp + 0x46], al
mov dword [rbp - 0x58], 0x64
mov dword [rbp - 0x50], 1
lea rdi, [0x1800e7008]
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x50]
lea r8, [0x18010cc78]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.18009dd50
jmp case.default.0x18001abe4
movsd xmm0, qword [0x1800e6990]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6998]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800e699c]
mov byte [rsp + 0x4c], al
mov r8d, r12d
mov r15d, 8
cmp esi, 2
jl 0x18001be26
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm12
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [0x1800e6990]
xorps xmm7, xmm0
movd dword [rsp + 0x40], xmm7
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001be31
lea rdx, [0x18020b8f9]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18020b8f9], dil
je case.default.0x18001abe4
movaps xmm1, xmm8
movaps xmm0, xmm13
call fcn.180076c10
mov edx, dword [str.dH___]
mov dword [rsp + 0x40], edx
movzx eax, word [0x1800e6dfc]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor al, 0x3b
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x3c
mov dword [rbp - 0x50], 0x41c80000
mov dword [rbp - 0x58], edi
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc70]
mov edx, r15d
lea rcx, [rsp + 0x40]
call fcn.18009dd50
jmp case.default.0x18001abe4
movsd xmm0, qword [str.V_SUUI_]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6ab0]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6ab4]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x1800e6ab6]
mov byte [rsp + 0x4e], al
mov r8d, r12d
mov r15d, 8
cmp esi, 2
jl 0x18001c010
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.V_SUUI_]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001c020
lea rdx, [0x18020b8fe]
lea rcx, [rsp + 0x40]
call fcn.18009a290
mov eax, dword [str.qT_:]
mov dword [rbp - 0x58], eax
cmp byte [0x1800e6ecf], dil
je 0x18001c112
cmp esi, 2
jl 0x18001c0da
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp - 0x58], xmm1
jmp 0x18001c112
lea r9, [rbp - 0x58]
mov r8d, r12d
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001c0e1
lea rdx, [0x18020b8fd]
lea rcx, [rbp - 0x58]
call fcn.18009a290
cmp byte [0x18020b8fd], dil
je case.default.0x18001abe4
movups xmm0, xmmword [0x1800e6c50]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800e6c60]
movups xmmword [rbp - 0x78], xmm1
movsd xmm0, qword [0x1800e6c70]
movsd qword [rbp - 0x68], xmm0
mov eax, dword [0x1800e6c78]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x1800e6c7c]
mov byte [rbp - 0x5c], al
mov r8d, r12d
cmp esi, 2
jl 0x18001c26c
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x18001c182
cmp r8d, 0x2d
jge 0x18001c2b1
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2d
jl 0x18001c280
lea rdx, [0x18020b8fc]
lea rcx, [rsp + 0x78]
call fcn.18009a290
movsd xmm0, qword [0x1800e6e08]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6e10]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6e14]
mov word [rsp + 0x4c], ax
cmp byte [0x1800e6e15], dil
je 0x18001c411
mov r8d, r12d
cmp esi, 2
jl 0x18001c3cd
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm12
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [0x1800e6e08]
xorps xmm7, xmm0
movd dword [rsp + 0x40], xmm7
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x18001c3e0
lea rdx, [0x18020b8fb]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movzx eax, word [0x1800e69d0]
mov word [rsp + 0x48], ax
movsd xmm0, qword [0x1800e69c8]
movzx eax, byte [0x1800e69d2]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x4e
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18020b8fa]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [0x1800e6b98]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6ba0]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6ba1], dil
je 0x18001c4e1
mov byte [rsp + 0x40], 0x46
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
mov dword [rbp - 0x50], 0x447a0000
mov dword [rbp - 0x58], 0x420c0000
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc74]
mov edx, r15d
lea rcx, [rsp + 0x40]
call fcn.18009dd50
jmp case.default.0x18001abe4
mov eax, dword [0x1800e6304]
mov dword [rbp - 0x50], eax
movzx eax, byte [0x1800e6308]
mov byte [rbp - 0x50], 0x4e
xor byte [rbp - 0x4f], 0x38
xor byte [rbp - 0x4e], 0x39
xor byte [rbp - 0x4d], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4c], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 8], xmm1
lea rax, [rbp - 0x50]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], dil
jne 0x18001c563
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x18]
call fcn.1800133e0
nop
mov r15d, 8
mov eax, dword [0x18020b8f4]
test al, al
je 0x18001c806
mov dword [rbp - 0x50], eax
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x50]
call fcn.18005e990
mov rdx, qword [rax]
add rdx, 0x28
lea rcx, [rsp + 0x78]
call fcn.180013240
nop
movsd xmm0, qword [0x1800e6d28]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6d30]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800e6d34]
mov byte [rsp + 0x4c], al
mov r8d, r12d
cmp esi, 2
jl 0x18001c6b1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6d28]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001c6c0
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
lea rax, [rsp + 0x40]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18001c710
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x38]
call fcn.1800133e0
nop
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x38]
lea rcx, [rsp + 0x50]
call fcn.1800213b0
mov edi, 0x30
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x18001c77c
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c777
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212e3
call fcn.1800b0f48
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 8], xmm1
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x18001c7ca
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c7c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212e9
call fcn.1800b0f48
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x18001c806
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c801
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212ef
call fcn.1800b0f48
cmp byte [0x18020b8d8], 0
je 0x18001ca32
mov eax, dword [0x1800e6a44]
mov dword [rbp - 0x58], eax
cmp byte [str.:sYT_Y], 0
je 0x18001c8d1
cmp esi, 2
jl 0x18001c88b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp - 0x58], xmm1
jmp 0x18001c8d1
lea r9, [rbp - 0x58]
mov r8d, r12d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001c8a0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rbp - 0x58]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18001c8e6
mov r8, rbx
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x50]
call fcn.1800133e0
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x18001c93b
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c936
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212f5
call fcn.1800b0f48
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 8], xmm1
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x38], xmm1
mov r11, r12
mov qword [rbp - 0x28], r12
or edi, 8
mov dword [rbp - 0x58], edi
mov rdi, qword [0x18020bcf8]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x18001c9ac
mov ecx, dword [rbx + 0x10]
call fcn.180055bf0
test al, al
je 0x18001c9a0
mov rdx, qword [rbp - 0x30]
cmp rdx, qword [rbp - 0x28]
je 0x18001c993
mov eax, dword [rbx + 0x10]
mov dword [rdx], eax
add qword [rbp - 0x30], 4
jmp 0x18001c9a0
lea r8, [rbx + 0x10]
lea rcx, [rbp - 0x38]
call fcn.180055250
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x18001c971
mov r11, qword [rbp - 0x28]
mov r9, qword [rbp - 0x30]
mov r10, qword [rbp - 0x38]
sub r9, r10
sar r9, 2
test r9, r9
je 0x18001c9f1
mov r8d, r12d
mov rdx, r10
mov ecx, dword [rdx]
lea eax, [rcx - 1]
cmp eax, 2
jbe 0x18001c9e2
cmp ecx, 6
je 0x18001c9e2
mov dword [0x18020b8f4], ecx
mov byte [0x18020b8d8], 0
inc r8d
add rdx, 4
movsxd rax, r8d
cmp rax, r9
jb 0x18001c9c6
test r10, r10
je 0x18001ca32
sub r11, r10
sar r11, 2
lea rdx, [r11*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x18001ca2a
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212f5
mov rcx, r10
call fcn.1800b0f48
mov dword [rsp + 0x40], 0x437a0000
mov dword [rsp + 0x44], 0x42200000
lea rcx, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rcx, qword [rbp - 0x18]
lea rdx, [rsp + 0x40]
call fcn.180099140
test al, al
je 0x18001ca65
mov byte [0x18020b8d8], 1
movups xmm0, xmmword [0x1800e6a28]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6a38]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [0x1800e6a40]
mov dword [rbp - 0x20], eax
cmp byte [0x1800e6a43], 0
je 0x18001cbe1
mov r8d, r12d
cmp esi, 2
jl 0x18001cb9b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001cab0
cmp r8d, 0x1c
jge 0x18001cbe1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x18001cbb0
lea rdx, [0x18020b8f0]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movsd xmm0, qword [0x1800e6d50]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6d58]
mov dword [rsp + 0x48], eax
cmp byte [0x1800e6d5b], 0
je 0x18001cd31
mov r8d, r12d
cmp esi, 2
jl 0x18001ccf4
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6d50]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001cd00
lea rdx, [0x18020b8f8]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18020b8f8], 0
je 0x18001cf0b
movups xmm0, xmmword [str.vMMUelT_T51b_a___ha_a]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [0x1800e6f38]
mov dword [rbp - 0x28], eax
movzx eax, word [0x1800e6f3c]
mov word [rbp - 0x24], ax
movzx eax, byte [0x1800e6f3e]
mov byte [rbp - 0x22], al
mov r8d, r12d
cmp esi, 2
jl 0x18001ce8b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001cda0
cmp r8d, 0x17
jge 0x18001ced1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x17
jl 0x18001cea0
mov dword [rbp - 0x50], 0x41200000
mov dword [rbp - 0x58], 0
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc64]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
movups xmm0, xmmword [0x1800e6ae8]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [0x1800e6af8]
mov dword [rbp - 0x28], eax
cmp byte [0x1800e6afb], 0
je 0x18001d081
mov r8d, r12d
cmp esi, 2
jl 0x18001d03b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001cf50
cmp r8d, 0x14
jge 0x18001d081
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x14
jl 0x18001d050
mov dword [rbp - 0x50], 0x1f4
mov dword [rbp - 0x58], 1
lea rdi, [0x1800e7008]
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc68]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
movups xmm0, xmmword [0x1800e6c18]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6c28]
mov word [rbp - 0x28], ax
cmp byte [0x1800e6c29], 0
je 0x18001d231
mov r8d, r12d
cmp esi, 2
jl 0x18001d1eb
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001d100
cmp r8d, 0x12
jge 0x18001d231
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001d200
mov dword [rbp - 0x50], 0x1f4
mov dword [rbp - 0x58], 1
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc6c]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
nop
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe case.default.0x18001abe4
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800211a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212dd
jmp 0x1800211a3
mov qword [rbp - 0x50], rdi
mov eax, dword [str.tJXIS_]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1800e6d00]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor al, 0x3b
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x3c
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180099140
jmp case.default.0x18001abe4
movsd xmm0, qword [0x1800e6e88]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x1800e6e90]
mov word [rsp + 0x48], cx
movzx eax, byte [0x1800e6e92]
mov byte [rsp + 0x40], 0x57
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor cl, 0x3f
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18020b907]
lea rcx, [rsp + 0x40]
call fcn.18009a290
mov dword [rbp - 0x50], 0x1f4
mov dword [rbp - 0x58], 1
movups xmm0, xmmword [str.__XJTR]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [str..____N__XJTR]
movsd qword [rbp - 0x28], xmm0
cmp byte [0x1800e6e87], dil
je 0x18001d4d1
cmp esi, 2
jl 0x18001d496
mov edx, r12d
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x18001d3b1
jmp 0x18001d4d1
lea r9, [rbp - 0x38]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x18001d4a0
lea rdi, [0x1800e7008]
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc98]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
mov rax, qword [0x18020b828]
mov r8, qword [rax + 0x4000]
movss xmm8, dword [0x1800f8860]
cmp byte [r8 + 0xc3], r12b
jne 0x18001d548
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r12
je 0x18001d53f
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm8
call fcn.18009b1e0
movsd xmm0, qword [0x1800e6ba8]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6bb0]
mov dword [rsp + 0x48], eax
mov r15d, 8
cmp byte [0x1800e6bb3], r12b
je 0x18001d691
mov r8d, r12d
cmp esi, 2
jl 0x18001d650
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6ba8]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001d660
lea rdx, [0x18020b868]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movups xmm0, xmmword [str.a_QSXPX]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6d18]
movsd qword [rbp - 0x28], xmm0
movzx eax, byte [0x1800e6d20]
mov byte [rbp - 0x20], al
mov r8d, r12d
cmp esi, 2
jl 0x18001d7ca
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001d6e0
cmp r8d, 0x19
jge 0x18001d811
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x18001d7e0
mov dword [rbp - 0x50], 0x1f4
mov dword [rbp - 0x58], 1
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cb30]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
mov rax, qword [0x18020b828]
mov r8, qword [rax + 0x4000]
cmp byte [r8 + 0xc3], r12b
jne 0x18001d886
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r12
je 0x18001d87d
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm8
call fcn.18009b1e0
movzx eax, word [0x1800e6de0]
mov word [rsp + 0x48], ax
movsd xmm0, qword [str.gTXCN]
movzx eax, byte [0x1800e6de2]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x50
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18010cc9e]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18010cc9e], r12b
je case.default.0x18001abe4
mov eax, dword [0x1800e7004]
mov dword [rbp - 0x58], eax
cmp byte [0x1800e7007], r12b
je 0x18001d9b1
cmp esi, 2
jl 0x18001d975
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp - 0x58], xmm1
jmp 0x18001d9b1
lea r9, [rbp - 0x58]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001d980
lea rdx, [0x18010ccc9]
lea rcx, [rbp - 0x58]
call fcn.18009a290
cmp byte [0x18010ccc9], r12b
je 0x18001df3b
mov rax, qword [0x1800e6ed0]
mov qword [rsp + 0x40], rax
cmp byte [0x1800e6ed7], r12b
je 0x18001db00
cmp esi, 2
jl 0x18001dabe
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm12
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x18001db00
lea r9, [rsp + 0x40]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, r15d
jl 0x18001dad0
lea rax, [rsp + 0x40]
mov qword [rbp - 0x18], rax
movsd xmm0, qword [0x1800e6c40]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6c48]
mov dword [rsp + 0x48], eax
cmp byte [0x1800e6c4b], r12b
je 0x18001dc51
mov r8d, r12d
cmp esi, 2
jl 0x18001dc0b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6c40]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001dc20
lea rax, [rsp + 0x40]
mov qword [rbp - 0x10], rax
mov rax, qword [0x1800e6e00]
mov qword [rsp + 0x40], rax
cmp byte [0x1800e6e07], r12b
je 0x18001dd90
cmp esi, 2
jl 0x18001dd4a
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm12
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x18001dd90
lea r9, [rsp + 0x40]
mov r8d, r12d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, r15d
jl 0x18001dd60
lea rax, [rsp + 0x40]
mov qword [rbp - 8], rax
movsd xmm0, qword [0x1800e6d90]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6d98]
mov dword [rsp + 0x48], eax
cmp byte [0x1800e6d9b], r12b
je 0x18001dee1
mov r8d, r12d
cmp esi, 2
jl 0x18001de9b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6d90]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001deb0
lea rax, [rsp + 0x40]
mov qword [rbp], rax
movsd xmm0, qword [0x1800e6b28]
movzx eax, byte [0x1800e6b30]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x42
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea r9, [rbp - 0x18]
lea rcx, [rsp + 0x40]
call fcn.18009c290
movsd xmm0, qword [str.dSVHRP_]
movzx eax, byte [0x1800e6a78]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea rdx, [0x18010ccc8]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movups xmm0, xmmword [str.sQJJW_D]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800e6a90]
movups xmmword [rbp - 0x78], xmm1
mov eax, dword [0x1800e6aa0]
mov dword [rbp - 0x68], eax
movzx eax, byte [0x1800e6aa4]
mov byte [rbp - 0x64], al
mov r8d, r12d
cmp esi, 2
jl 0x18001e0ca
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x18001dfe0
cmp r8d, 0x25
jge 0x18001e111
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x25
jl 0x18001e0e0
lea rdx, [0x18010cc9c]
lea rcx, [rsp + 0x78]
call fcn.18009a290
movsd xmm0, qword [str.sQJNZR__]
movzx eax, byte [0x1800e6dd0]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x44
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea rdx, [0x18010cc9f]
lea rcx, [rsp + 0x40]
call fcn.18009a290
mov eax, dword [str.yYT__]
mov dword [rbp - 0x50], eax
movzx eax, byte [0x1800e6c10]
mov byte [rbp - 0x50], 0x4e
xor byte [rbp - 0x4f], 0x38
xor byte [rbp - 0x4e], 0x39
xor byte [rbp - 0x4d], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4c], al
lea rdx, [0x18010cc9d]
lea rcx, [rbp - 0x50]
call fcn.18009a290
movsd xmm0, qword [str.tMKHRI]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [str.h__2_E]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6f4c]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x1800e6f4e]
mov byte [rsp + 0x4e], al
mov r8d, r12d
cmp esi, 2
jl 0x18001e2b7
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.tMKHRI]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001e2d0
lea rdx, [0x18010ccca]
lea rcx, [rsp + 0x40]
call fcn.18009a290
mov rax, qword [0x18020b828]
mov r8, qword [rax + 0x4000]
cmp byte [r8 + 0xc3], r12b
jne 0x18001e352
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r12
je 0x18001e349
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm8
call fcn.18009b1e0
movzx eax, word [0x1800e6980]
mov word [rsp + 0x48], ax
movsd xmm0, qword [0x1800e6978]
movzx eax, byte [0x1800e6982]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x50
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18010cca8]
lea rcx, [rsp + 0x40]
call fcn.18009a290
lea rbx, str._.3f
cmp byte [0x18010cca8], r12b
je 0x18001eb41
movups xmm0, xmmword [str.gYNTeoXRY_]
movups xmmword [rbp - 0x50], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x18001e531
cmp esi, 2
jl 0x18001e4f5
mov edx, r12d
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x4c]
mov r8d, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, r15d
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x18001e410
jmp 0x18001e531
lea r9, [rbp - 0x50]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x18001e500
lea rdx, [0x18010cca9]
lea rcx, [rbp - 0x50]
call fcn.18009a290
movups xmm0, xmmword [str.gYNTe]
movups xmmword [rbp - 0x50], xmm0
movzx eax, byte [0x1800e6c08]
mov byte [rbp - 0x40], al
mov r8d, r12d
cmp esi, 2
jl 0x18001e65b
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x4c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001e571
cmp r8d, 0x11
jge 0x18001e6a1
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x18001e670
mov r8d, 2
lea rdx, [0x18010ccb0]
lea rcx, [rbp - 0x50]
call fcn.1800a54a0
test al, al
je 0x18001e6c7
mov rcx, qword [0x18020b7c0]
mov rax, qword [rcx]
call qword [rax]
mov dword [rbp - 0x50], 0x42c80000
mov dword [rbp - 0x58], r12d
movups xmm0, xmmword [str.gYNTeQQH_]
movups xmmword [rbp - 0x38], xmm0
movzx eax, byte [0x1800e6ef8]
mov byte [rbp - 0x28], al
mov r8d, r12d
cmp esi, 2
jl 0x18001e7ec
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001e702
cmp r8d, 0x11
jge 0x18001e831
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x18001e800
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010ccac]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
test al, al
je 0x18001e866
mov rcx, qword [0x18020b7c0]
mov rax, qword [rcx]
call qword [rax]
mov eax, dword [0x1800e6f88]
mov dword [rbp - 0x48], eax
movzx eax, word [0x1800e6f8c]
mov word [rbp - 0x44], ax
movzx eax, byte [0x1800e6f8e]
movsd xmm0, qword [str.gYNTekTLZ3._E]
mov byte [rbp - 0x42], al
movsd qword [rbp - 0x50], xmm0
mov r8d, r12d
cmp esi, 2
jl 0x18001e96b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.gYNTekTLZ3._E]
xorps xmm1, xmm0
movd dword [rbp - 0x50], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x4c]
xorps xmm2, xmm1
movd dword [rbp - 0x4c], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001e980
lea rdx, [0x18010ccaa]
lea rcx, [rbp - 0x50]
call fcn.18009a290
movups xmm0, xmmword [0x1800e6ab8]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6ac8]
movsd qword [rbp - 0x28], xmm0
movzx eax, byte [0x1800e6ad0]
mov byte [rbp - 0x20], al
mov r8d, r12d
cmp esi, 2
jl 0x18001eaea
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001ea00
cmp r8d, 0x19
jge 0x18001eb31
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x18001eb00
lea rdx, [0x18010ccab]
lea rcx, [rbp - 0x38]
call fcn.18009a290
mov rax, qword [0x18020b828]
mov rdx, qword [rax + 0x4000]
cmp byte [rdx + 0xc3], r12b
jne 0x18001eb83
mov r8d, dword [rdx + 0x1c4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1b8], r12
je 0x18001eb7a
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm8
call fcn.18009b1e0
mov eax, dword [0x1800e6da8]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800e6dac]
movsd xmm0, qword [0x1800e6da0]
mov byte [rsp + 0x4c], al
movsd qword [rsp + 0x40], xmm0
mov r8d, r12d
cmp esi, 2
jl 0x18001ec84
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6da0]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001ec90
lea rdx, [0x18010cc80]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18010cc80], r12b
je 0x18001f4e1
movups xmm0, xmmword [0x1800e6d78]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6d88]
mov word [rbp - 0x28], ax
movzx eax, byte [0x1800e6d8a]
mov byte [rbp - 0x26], al
mov r8d, r12d
cmp esi, 2
jl 0x18001ee0a
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001ed20
cmp r8d, 0x13
jge 0x18001ee51
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x18001ee20
mov r8d, 2
lea rdx, [0x18010cc88]
lea rcx, [rbp - 0x38]
call fcn.1800a54a0
test al, al
je 0x18001ee77
mov rcx, qword [0x18020b7c8]
mov rax, qword [rcx]
call qword [rax]
mov dword [rbp - 0x50], 0x42c80000
mov dword [rbp - 0x58], r12d
movups xmm0, xmmword [0x1800e6c90]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6ca0]
mov word [rbp - 0x28], ax
movzx eax, byte [0x1800e6ca2]
mov byte [rbp - 0x26], al
mov r8d, r12d
cmp esi, 2
jl 0x18001efaa
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001eec0
cmp r8d, 0x13
jge 0x18001eff1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x18001efc0
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc84]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
test al, al
je 0x18001f02a
mov rcx, qword [0x18020b7c8]
mov rax, qword [rcx]
call qword [rax]
mov dword [rbp - 0x50], 0xa
mov dword [rbp - 0x58], 1
movups xmm0, xmmword [0x1800e6bb8]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [str.:__2L]
mov dword [rbp - 0x28], eax
movzx eax, word [0x1800e6bcc]
mov word [rbp - 0x24], ax
cmp byte [0x1800e6bcd], r12b
je 0x18001f1b1
mov r8d, r12d
cmp esi, 2
jl 0x18001f16a
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001f080
cmp r8d, 0x16
jge 0x18001f1b1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x16
jl 0x18001f180
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc94]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
movups xmm0, xmmword [str.gQZQNL]
movups xmmword [rbp - 0x38], xmm0
movzx eax, byte [0x1800e6e48]
mov byte [rbp - 0x28], al
mov r8d, r12d
cmp esi, 2
jl 0x18001f2fa
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001f210
cmp r8d, 0x11
jge 0x18001f341
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x18001f310
lea rdx, [0x18010cc82]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movups xmm0, xmmword [0x1800e6b78]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6b88]
movsd qword [rbp - 0x28], xmm0
movzx eax, word [0x1800e6b90]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800e6b92]
mov byte [rbp - 0x1e], al
mov r8d, r12d
cmp esi, 2
jl 0x18001f48a
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001f3a0
cmp r8d, 0x1b
jge 0x18001f4d1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x18001f4a0
lea rdx, [0x18010cc83]
lea rcx, [rbp - 0x38]
call fcn.18009a290
mov rax, qword [0x18020b828]
mov rdx, qword [rax + 0x4000]
cmp byte [rdx + 0xc3], r12b
jne 0x18001f52b
mov r8d, dword [rdx + 0x1c4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1b8], r12
je 0x18001f522
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm8
call fcn.18009b1e0
movups xmm0, xmmword [str.x_IXNX_Q__b__3_9K]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [0x1800e6be0]
mov dword [rbp - 0x28], eax
movzx eax, byte [0x1800e6be4]
mov byte [rbp - 0x24], al
mov r8d, r12d
cmp esi, 2
jl 0x18001f65a
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x18001f570
cmp r8d, 0x15
jge 0x18001f6a1
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x18001f670
lea rdx, [0x18010cca0]
lea rcx, [rbp - 0x38]
call fcn.18009a290
cmp byte [0x18010cca0], r12b
je case.default.0x18001abe4
movups xmm0, xmmword [0x1800e69f8]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6a08]
movsd qword [rbp - 0x28], xmm0
movzx eax, word [0x1800e6a10]
mov word [rbp - 0x20], ax
cmp byte [0x1800e6a11], r12b
je 0x18001f841
mov r8d, r12d
cmp esi, 2
jl 0x18001f7fa
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001f710
cmp r8d, 0x1a
jge 0x18001f841
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1a
jl 0x18001f810
mov dword [rbp - 0x50], 0x42480000
mov dword [rbp - 0x58], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010ccc4]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
mov dword [rbp - 0x50], 0x42480000
mov dword [rbp - 0x58], 0x3f800000
movups xmm0, xmmword [str.x_IXNX_Q__b__3_j]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6ce0]
movsd qword [rbp - 0x28], xmm0
movzx eax, word [0x1800e6ce8]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800e6cea]
mov byte [rbp - 0x1e], al
mov r8d, r12d
cmp esi, 2
jl 0x18001f9be
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x18001f8d0
cmp r8d, 0x1b
jge 0x18001fa01
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x18001f9d0
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010ccbc]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
movups xmm0, xmmword [str.x_IXNX_Q__b__3_j_b7o]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800e6ff0]
movups xmmword [rbp - 0x78], xmm1
mov eax, dword [0x1800e7000]
mov dword [rbp - 0x68], eax
mov r8d, r12d
cmp esi, 2
jl 0x18001fb50
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, r15d
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x18001fa62
cmp r8d, 0x24
jge 0x18001fb91
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x24
jl 0x18001fb60
lea rdx, [0x18020b908]
lea rcx, [rsp + 0x78]
call fcn.18009a290
cmp byte [0x18020b908], r12b
jne case.default.0x18001abe4
movups xmm0, xmmword [str.x_IXNX_Q__b__3_j_r]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1800e6d48]
movsd qword [rbp - 0x28], xmm0
cmp byte [0x1800e6d4f], r12b
je 0x18001fd11
cmp esi, 2
jl 0x18001fcd8
mov edx, r12d
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, r15d
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x18001fbf0
jmp 0x18001fd11
lea r9, [rbp - 0x38]
mov r8d, r12d
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x18001fce0
mov dword [rbp - 0x50], 0xb4
mov dword [rbp - 0x58], 1
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010ccc0]
mov edx, 4
lea rcx, [rbp - 0x38]
call fcn.18009dd50
jmp case.default.0x18001abe4
movsd xmm0, qword [str.vQTXTH]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6f58]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6f5c]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x1800e6f5e]
mov byte [rsp + 0x4e], al
mov r8d, r12d
mov r15d, 8
cmp esi, 2
jl 0x18001fe5d
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.vQTXTH]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001fe70
lea rdx, [0x18010cc09]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18010cc09], dil
je case.default.0x18001abe4
mov eax, dword [0x1800e6304]
mov dword [rbp - 0x50], eax
movzx eax, byte [0x1800e6308]
mov byte [rbp - 0x50], 0x4e
xor byte [rbp - 0x4f], 0x38
xor byte [rbp - 0x4e], 0x39
xor byte [rbp - 0x4d], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4c], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 8], xmm1
lea rax, [rbp - 0x50]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], dil
jne 0x18001ff01
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x18]
call fcn.1800133e0
nop
mov eax, dword [0x18010cc40]
test al, al
je 0x1800200ce
mov dword [rbp - 0x50], eax
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x50]
call fcn.18005e990
mov rdx, qword [rax]
add rdx, 0x28
lea rcx, [rsp + 0x78]
call fcn.180013240
nop
movsd xmm0, qword [0x1800e6ed8]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6ee0]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6ee1], 0
je 0x18001ffa2
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
lea rax, [rsp + 0x40]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18001ffc0
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x38]
call fcn.1800133e0
nop
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x38]
lea rcx, [rsp + 0x50]
call fcn.1800213b0
mov edi, 3
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x180020034
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002002f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212fb
call fcn.1800b0f48
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 8], xmm1
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x18002008a
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020084
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180021301
call fcn.1800b0f48
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x1800200ce
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800200c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180021307
call fcn.1800b0f48
cmp byte [0x18020b8d8], 0
je 0x18002032c
mov eax, dword [0x1800e6a44]
mov dword [rbp - 0x58], eax
cmp byte [str.:sYT_Y], 0
je 0x180020191
cmp esi, 2
jl 0x180020156
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp - 0x58], xmm1
jmp 0x180020191
lea r9, [rbp - 0x58]
mov r8d, r12d
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x180020160
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rbp - 0x58]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800201a6
mov r8, rbx
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x50]
call fcn.1800133e0
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x180020203
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800201fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002130d
call fcn.1800b0f48
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp - 8], xmm1
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x38], xmm1
mov r11, r12
mov qword [rbp - 0x28], r12
or edi, 4
mov dword [rbp - 0x58], edi
mov rdi, qword [0x18020bcf8]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x180020286
nop dword [rax]
mov ecx, dword [rbx + 0x10]
call fcn.180055bf0
test al, al
je 0x18002027a
mov rdx, qword [rbp - 0x30]
cmp rdx, qword [rbp - 0x28]
je 0x18002026d
mov eax, dword [rbx + 0x10]
mov dword [rdx], eax
add qword [rbp - 0x30], 4
jmp 0x18002027a
lea r8, [rbx + 0x10]
lea rcx, [rbp - 0x38]
call fcn.180055250
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x180020240
mov r11, qword [rbp - 0x28]
mov r9, qword [rbp - 0x30]
mov r10, qword [rbp - 0x38]
sub r9, r10
sar r9, 2
test r9, r9
je 0x1800202e3
mov r8d, r12d
mov rdx, r10
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [rdx]
lea eax, [rcx - 1]
cmp eax, 2
jbe 0x1800202d4
cmp ecx, 6
je 0x1800202d4
mov dword [0x18010cc40], ecx
mov byte [0x18020b8d8], 0
inc r8d
add rdx, 4
movsxd rax, r8d
cmp rax, r9
jb 0x1800202b0
test r10, r10
je 0x18002032c
sub r11, r10
sar r11, 2
lea rdx, [r11*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x180020324
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002130d
mov rcx, r10
call fcn.1800b0f48
mov dword [rsp + 0x40], 0x437a0000
mov dword [rsp + 0x44], 0x42200000
lea rcx, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rcx, qword [rbp - 0x18]
lea rdx, [rsp + 0x40]
call fcn.180099140
movsd xmm0, qword [str.dQU_UH]
movsd qword [rsp + 0x40], xmm0
test al, al
movzx eax, word [0x1800e6ae0]
mov word [rsp + 0x48], ax
movzx eax, byte [0x1800e6ae2]
je 0x180020384
mov byte [0x18020b8d8], 1
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18020b8b7]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18020b8b7], 0
je 0x180020561
movups xmm0, xmmword [0x1800e6d60]
movups xmmword [rbp - 0x38], xmm0
mov eax, dword [0x1800e6d70]
mov dword [rbp - 0x28], eax
movzx eax, word [0x1800e6d74]
mov word [rbp - 0x24], ax
movzx eax, byte [0x1800e6d76]
mov byte [rbp - 0x22], al
mov r8d, r12d
cmp esi, 2
jl 0x18002050f
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x180020420
cmp r8d, 0x17
jge 0x180020551
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x17
jl 0x180020520
lea rdx, [0x18020b8b6]
lea rcx, [rbp - 0x38]
call fcn.18009a290
movsd xmm0, qword [str.dPVMeTS]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6c38]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6c3c]
mov word [rsp + 0x4c], ax
cmp byte [0x1800e6c3d], 0
je 0x1800206b1
mov r8d, r12d
cmp esi, 2
jl 0x18002066f
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.dPVMeTS]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x180020680
lea rdx, [0x18010ccd1]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [str.dPVMezrh_]
movzx eax, byte [0x1800e6fb8]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea rdx, [0x18010ccd2]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [str.dLPYPE]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x1800e6cf8]
mov word [rsp + 0x48], cx
movzx eax, byte [0x1800e6cfa]
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor cl, 0x3f
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x40
xor al, 0x41
mov byte [rsp + 0x4a], al
lea rdx, [0x18010cc0a]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [str.aQJSYPX]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [str.____D]
mov dword [rsp + 0x48], eax
movzx eax, word [0x1800e6b74]
mov word [rsp + 0x4c], ax
cmp byte [0x1800e6b75], 0
je 0x1800208d1
mov r8d, r12d
cmp esi, 2
jl 0x180020890
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.aQJSYPX]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x1800208a0
lea rdx, [0x18010cc54]
lea rcx, [rsp + 0x40]
call fcn.18009a290
movsd xmm0, qword [str.dLXT__OZ_]
movzx eax, byte [0x1800e6b58]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea rdx, [0x18010ccd0]
lea rcx, [rsp + 0x40]
call fcn.18009a290
lea rdi, [0x1800e7008]
lea rbx, str._.3f
cmp byte [0x18010ccd0], 0
je 0x180020c64
movsd xmm0, qword [0x1800e6db8]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6dc0]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800e6dc4]
mov byte [rsp + 0x4c], al
mov r8d, r12d
cmp esi, 2
jl 0x180020a51
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1800e6db8]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180020a60
mov dword [rbp - 0x50], 0xb4
mov dword [rbp - 0x58], r12d
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc50]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.18009dd50
movups xmm0, xmmword [str.dLXT__OZ]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6e60]
mov word [rbp - 0x28], ax
movzx eax, byte [0x1800e6e62]
mov byte [rbp - 0x26], al
mov r8d, r12d
cmp esi, 2
jl 0x180020bef
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x180020b00
cmp r8d, 0x13
jge 0x180020c31
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x180020c00
mov dword [rbp - 0x50], 0x41a00000
mov dword [rbp - 0x58], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc4c]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
movsd xmm0, qword [str.tTVI]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6cb8]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6cb9], 0
je 0x180020cbd
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
lea rdx, [0x18010cc55]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18010cc55], 0
je 0x180020df4
movsd xmm0, qword [0x1800e6a60]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6a68]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6a69], 0
je 0x180020d34
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
mov dword [rbp - 0x50], 0xb4
mov dword [rbp - 0x58], r12d
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc5c]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.18009dd50
movsd xmm0, qword [str.dUVUOTTPX_]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800e6cc8]
mov word [rsp + 0x48], ax
cmp byte [0x1800e6cc9], 0
je 0x180020dc0
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor byte [rsp + 0x48], 0x3f
xor byte [rsp + 0x49], 0x40
mov dword [rbp - 0x50], 0x41a00000
mov dword [rbp - 0x58], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc58]
mov edx, r15d
lea rcx, [rsp + 0x40]
call fcn.18009dd50
movsd xmm0, qword [str.__XQHLRJ_]
movzx eax, byte [0x1800e6bf0]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x57
xor byte [rsp + 0x41], 0x38
xor byte [rsp + 0x42], 0x39
xor byte [rsp + 0x43], 0x3a
xor byte [rsp + 0x44], 0x3b
xor byte [rsp + 0x45], 0x3c
xor byte [rsp + 0x46], 0x3d
xor byte [rsp + 0x47], 0x3e
xor al, 0x3f
mov byte [rsp + 0x48], al
lea rdx, [0x18010cc08]
lea rcx, [rsp + 0x40]
call fcn.18009a290
cmp byte [0x18010cc08], 0
je 0x180021165
movsd xmm0, qword [str.__XQHLRJ]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800e6df0]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800e6df4]
mov byte [rsp + 0x4c], al
mov r8d, r12d
cmp esi, 2
jl 0x180020f56
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.__XQHLRJ]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm11
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
movdqa xmm0, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm11, xmm0
andps xmm11, xmm9
packuswb xmm11, xmm11
packuswb xmm11, xmm11
movd xmm0, eax
paddb xmm11, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm11, xmm1
movd dword [rsp + 0x44], xmm11
mov r8d, r15d
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180020f61
mov dword [rbp - 0x50], 0xb4
mov dword [rbp - 0x58], r12d
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc48]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.18009dd50
movups xmm0, xmmword [0x1800e6f10]
movups xmmword [rbp - 0x38], xmm0
movzx eax, word [0x1800e6f20]
mov word [rbp - 0x28], ax
movzx eax, byte [0x1800e6f22]
mov byte [rbp - 0x26], al
mov r8d, r12d
cmp esi, 2
jl 0x1800210ef
movdqa xmmword [rsp + 0x50], xmm12
lea rcx, [rbp - 0x34]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x180021000
cmp r8d, 0x13
jge 0x180021131
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x37
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x180021100
mov dword [rbp - 0x50], 0x41a00000
mov dword [rbp - 0x58], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x18010cc44]
mov edx, r15d
lea rcx, [rbp - 0x38]
call fcn.18009dd50
nop
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe case.default.0x18001abe4
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800211a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800212d7
call fcn.1800b0f48
call fcn.180071780
cmp byte [0x18010cc60], 0
je 0x180021282
mov rbx, qword [0x18020b828]
test rbx, rbx
jne 0x1800211e7
xor r8d, r8d
lea rdx, [0x1800eaa38]
lea rcx, str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call fcn.1800c5568
mov rbx, qword [0x18020b828]
movsd xmm0, qword [rbx + 0xe40]
movsd qword [rsp + 0x40], xmm0
cmp dword [rbx + 0x4b08], 0
jg 0x180021218
xor r8d, r8d
lea rdx, [0x1800eaa38]
lea rcx, str.i___0__i___Size
call fcn.1800c5568
mov rax, qword [rbx + 0x4b10]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.1800682a0
mov rbx, rax
mov dword [rsp + 0x28], 0xf
movss xmm0, dword [0x1800f88e4]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm13
movss xmm2, dword [0x1800f88dc]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.18008b950
mov r9d, 0xffffffff
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.18008ae90
mov dword [rbx + 0x78], r12d
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.1800b0bb0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1800b6df4
int3
call fcn.1800b6df4
nop
call fcn.1800b6df4
nop
call fcn.1800b6df4
nop
call fcn.1800b6df4
int3
call fcn.1800b6df4
nop
call fcn.1800b6df4
nop
call fcn.1800b6df4
nop
call fcn.1800b6df4
int3
call fcn.1800b6df4
int3