Function at 0x18001a850
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x150
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
mov rax, qword [0x180111040]
xor rax, rsp
mov qword [rbp + 0x10], rax
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0x40], r15d
mov rax, qword [0x1802107b8]
test rax, rax
jne 0x18001a8be
xor r8d, r8d
lea rdx, [0x1800efa88]
lea rcx, str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call fcn.1800ca978
mov rax, qword [0x1802107b8]
movss xmm0, dword [rax + 0x2ef8]
xorps xmm8, xmm8
ucomiss xmm0, xmm8
jp 0x18001a8e4
jne 0x18001a8e4
cmp byte [0x180111bf0], sil
sete al
mov byte [0x180111bf0], al
jmp 0x18001a8eb
movzx eax, byte [0x180111bf0]
test al, al
je 0x180022243
movsd xmm0, qword [str.bWG_XPK9]
movsd qword [rbp - 0x58], xmm0
movzx eax, byte [0x1800eb998]
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x58]
call fcn.180072430
mov dword [rbp - 0x40], 0x43160000
mov dword [rbp - 0x3c], 0x41f00000
mov eax, dword [str.p_VZB7]
mov dword [rbp - 0x58], eax
movzx ecx, word [0x1800ebf8c]
mov word [rbp - 0x54], cx
movzx eax, byte [0x1800ebf8e]
mov byte [rbp - 0x58], 0x41
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor cl, 0x35
mov byte [rbp - 0x54], cl
xor byte [rbp - 0x53], 0x36
xor al, 0x37
mov byte [rbp - 0x52], al
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
test al, al
je 0x18001a9a8
mov dword [0x180210894], r15d
mov dword [0x180210864], r15d
mov byte [0x180210860], sil
movss xmm7, dword [0x1800fdac4]
movaps xmm1, xmm7
xorps xmm0, xmm0
call fcn.180079f90
mov dword [rbp - 0x40], 0x43160000
mov dword [rbp - 0x3c], 0x41f00000
mov rax, qword [str.g__ATZD8_d]
mov qword [rbp - 0x58], rax
mov edi, dword [0x180111088]
cmp byte [0x1800ec02f], sil
je 0x18001ab22
cmp edi, 2
jl 0x18001aae2
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, dword [rbp - 0x58]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, dword [rbp - 0x54]
xorps xmm2, xmm0
movd dword [rbp - 0x54], xmm2
jmp 0x18001ab22
lea r9, [rbp - 0x58]
mov r8d, r15d
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001aaf0
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
mov dword [rbp - 0x58], 0x43160000
mov dword [rbp - 0x54], 0x41f00000
movsd xmm0, qword [str.tJCXZ_CK9]
movzx edx, byte [0x1800eba28]
movaps xmm1, xmm7
movsd qword [rbp - 0x40], xmm0
movaps xmm0, xmm8
test al, al
je 0x18001ab74
mov dword [0x180210894], 1
mov dword [0x180210864], r15d
mov byte [0x180210860], sil
call fcn.180079f90
mov byte [rbp - 0x40], 0x45
xor byte [rbp - 0x3f], 0x32
xor byte [rbp - 0x3e], 0x33
xor byte [rbp - 0x3d], 0x34
xor byte [rbp - 0x3c], 0x35
xor byte [rbp - 0x3b], 0x36
xor byte [rbp - 0x3a], 0x37
xor byte [rbp - 0x39], 0x38
xor dl, 0x39
mov byte [rbp - 0x38], dl
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x40]
call fcn.18009cdc0
test al, al
je 0x18001abcb
mov ecx, 2
mov dword [0x180210894], ecx
mov dword [0x180210864], r15d
mov byte [0x180210860], sil
jmp 0x18001abd1
mov ecx, dword [0x180210894]
test ecx, ecx
je 0x180020c0c
sub ecx, 1
je 0x18001dd0e
cmp ecx, 1
jne case.default.0x18001b0de
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
mov eax, dword [0x1800ebc88]
mov dword [rbp - 0x58], eax
movzx ecx, word [0x1800ebc8c]
mov word [rbp - 0x54], cx
movzx eax, byte [0x1800ebc8e]
mov byte [rbp - 0x58], 0x50
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor cl, 0x35
mov byte [rbp - 0x54], cl
xor byte [rbp - 0x53], 0x36
xor al, 0x37
mov byte [rbp - 0x52], al
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
movzx edx, byte [0x1800ebdaa]
movaps xmm0, xmm8
movaps xmm1, xmm7
test al, al
mov eax, dword [0x1800ebda4]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1800ebda8]
mov word [rbp - 0x54], ax
je 0x18001ac7b
mov dword [0x180210864], r15d
call fcn.180079f90
mov byte [rbp - 0x58], 0x57
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor dl, 0x37
mov byte [rbp - 0x52], dl
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
test al, al
je 0x18001acb9
mov dword [0x180210864], 1
movaps xmm1, xmm7
movaps xmm0, xmm8
call fcn.180079f90
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
mov rax, qword [str.a_P_TNR8rGAFPXC]
mov qword [rbp - 0x58], rax
cmp byte [0x1800ebb07], sil
je 0x18001ae32
cmp edi, 2
jl 0x18001adec
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x58]
xorps xmm2, xmm1
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
jmp 0x18001ae32
lea r9, [rbp - 0x58]
mov r8d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001ae00
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
test al, al
je 0x18001ae4d
mov dword [0x180210864], 2
movaps xmm1, xmm7
movaps xmm0, xmm8
call fcn.180079f90
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
mov rax, qword [str.gW__VZR8TUGVDR_W]
mov qword [rbp - 0x58], rax
cmp byte [0x1800ebe07], sil
je 0x18001afc2
cmp edi, 2
jl 0x18001af80
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x58]
xorps xmm2, xmm1
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
jmp 0x18001afc2
lea r9, [rbp - 0x58]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001af90
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
movzx edx, byte [0x1800eba0a]
movaps xmm0, xmm8
movaps xmm1, xmm7
test al, al
mov eax, dword [str.a_P__F7]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1800eba08]
mov word [rbp - 0x54], ax
je 0x18001b00d
mov dword [0x180210864], 3
call fcn.180079f90
mov byte [rbp - 0x58], 0x50
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor dl, 0x37
mov byte [rbp - 0x52], dl
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
mov dword [rbp - 0x40], 0x42a00000
mov dword [rbp - 0x3c], 0x41c80000
movzx edx, byte [0x1800ebe6e]
movaps xmm0, xmm8
movaps xmm1, xmm7
test al, al
mov eax, dword [str.bWABPD7]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1800ebe6c]
mov word [rbp - 0x54], ax
je 0x18001b07b
mov dword [0x180210864], 4
call fcn.180079f90
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor dl, 0x37
mov byte [rbp - 0x52], dl
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
test al, al
je 0x18001b0bc
mov eax, 5
mov dword [0x180210864], eax
jmp 0x18001b0c2
mov eax, dword [0x180210864]
cmp eax, 5
ja case.default.0x18001b0de
cdqe
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x222b8]
add rcx, rdx
jmp rcx
movups xmm0, xmmword [0x1800eb9c8]
movups xmmword [rbp - 0x58], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x18001b282
cmp edi, 2
jl 0x18001b23f
movdqa xmm5, xmmword [0x1800fdb80]
mov edx, r15d
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x54]
mov r8d, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001b140
jmp 0x18001b282
lea r9, [rbp - 0x58]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x18001b250
lea rdx, [0x180210887]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [str.u__UWZR]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebcd0]
mov word [rbp - 0x20], ax
cmp byte [0x1800ebcd1], sil
je 0x18001b432
mov r8d, r15d
cmp edi, 2
jl 0x18001b3f5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001b2f0
cmp r8d, 0x12
jge 0x18001b432
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001b400
lea rdx, [0x180210888]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movups xmm0, xmmword [str.aRMPD]
movups xmmword [rbp - 0x30], xmm0
mov eax, dword [0x1800ec008]
mov dword [rbp - 0x20], eax
movzx eax, byte [0x1800ec00c]
mov byte [rbp - 0x1c], al
mov r8d, r15d
cmp edi, 2
jl 0x18001b5a5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001b4a0
cmp r8d, 0x15
jge 0x18001b5e2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x18001b5b0
lea rdx, [0x1802107f1]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
mov eax, dword [str.w_E4u__DYWN]
mov dword [rsp + 0x40], eax
cmp byte [0x1800ebe3f], sil
je 0x18001b6d2
cmp edi, 2
jl 0x18001b68c
movdqa xmm3, xmmword [0x1800fdb80]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1800fde00]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1800fde00]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x18001b6d2
lea r9, [rsp + 0x40]
mov r8d, r15d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001b6a0
mov dword [rbp - 0x40], 0x4479c000
mov dword [rbp - 0x58], 0x41200000
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
lea r8, [0x180111b58]
mov edx, 8
lea rcx, [rsp + 0x40]
call fcn.1800a1970
movups xmm0, xmmword [str.z__X]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebee0]
movsd qword [rbp - 0x20], xmm0
mov eax, dword [0x1800ebee8]
mov dword [rbp - 0x18], eax
movzx eax, word [0x1800ebeec]
mov word [rbp - 0x14], ax
cmp byte [0x1800ebeed], sil
je 0x18001b8d2
mov r8d, r15d
cmp edi, 2
jl 0x18001b887
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001b782
cmp r8d, 0x1e
jge 0x18001b8d2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x18001b8a0
lea rdx, [0x18021088a]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movups xmm0, xmmword [str.tVZ_]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800eba40]
mov word [rbp - 0x20], ax
cmp byte [0x1800eba41], sil
je 0x18001ba82
mov r8d, r15d
cmp edi, 2
jl 0x18001ba45
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001b940
cmp r8d, 0x12
jge 0x18001ba82
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001ba50
lea rdx, [0x1802107f2]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movups xmm0, xmmword [0x1800ebc10]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebc20]
movsd qword [rbp - 0x20], xmm0
cmp byte [0x1800ebc27], sil
je 0x18001bc32
cmp edi, 2
jl 0x18001bbf1
movdqa xmm5, xmmword [0x1800fdb80]
mov edx, r15d
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001baf2
jmp 0x18001bc32
lea r9, [rbp - 0x30]
mov r8d, r15d
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x18001bc00
lea rdx, [0x1802107f3]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movsd xmm0, qword [str.u_FVYS]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebda0]
mov dword [rbp - 0x50], eax
cmp byte [0x1800ebda3], sil
je 0x18001bdb2
mov r8d, r15d
cmp edi, 2
jl 0x18001bd70
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.u_FVYS]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001bd80
lea rdx, [0x1802107f4]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
jmp case.default.0x18001b0de
cmp qword [0x180210870], rsi
je 0x18001bf92
movups xmm0, xmmword [0x1800ebd50]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebd60]
movsd qword [rbp - 0x20], xmm0
mov eax, dword [0x1800ebd68]
mov dword [rbp - 0x18], eax
movzx eax, byte [0x1800ebd6c]
mov byte [rbp - 0x14], al
mov r8d, r15d
cmp edi, 2
jl 0x18001bf45
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001be40
cmp r8d, 0x1d
jge 0x18001bf82
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1d
jl 0x18001bf50
lea rdx, [0x18021083c]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
cmp qword [0x180210868], rsi
je 0x18001c162
movups xmm0, xmmword [str.sG_XPB]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebf30]
movsd qword [rbp - 0x20], xmm0
mov eax, dword [0x1800ebf38]
mov dword [rbp - 0x18], eax
cmp byte [0x1800ebf3b], sil
je 0x18001c152
mov r8d, r15d
cmp edi, 2
jl 0x18001c115
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001c010
cmp r8d, 0x1c
jge 0x18001c152
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x18001c120
lea rdx, [0x18021083d]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebf98]
movsd qword [rbp - 0x58], xmm0
movzx eax, word [0x1800ebfa0]
mov word [rbp - 0x50], ax
cmp byte [0x1800ebfa1], sil
je 0x18001c1ab
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
lea rdx, [0x18021088c]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebc00]
movsd qword [rbp - 0x58], xmm0
movzx eax, word [0x1800ebc08]
mov word [rbp - 0x50], ax
cmp byte [0x1800ebc09], sil
je 0x18001c204
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
lea rdx, [0x180210889]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebfa8]
movsd qword [rbp - 0x58], xmm0
movzx eax, word [0x1800ebfb0]
mov word [rbp - 0x50], ax
lea rdx, [0x18021088e]
lea rcx, [rbp - 0x58]
cmp byte [0x1800ebfb1], sil
je 0x18001c268
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
call fcn.18009dea0
movzx eax, word [0x1800ebce0]
mov word [rbp - 0x50], ax
movsd xmm0, qword [str.cSC_Q]
movzx eax, byte [0x1800ebce2]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x52
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x18021088b]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [str.uSURS]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebe38]
mov word [rbp - 0x20], ax
cmp byte [0x1800ebe39], sil
je 0x18001c472
mov r8d, r15d
cmp edi, 2
jl 0x18001c435
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001c330
cmp r8d, 0x12
jge 0x18001c472
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001c440
lea rdx, [0x18021088d]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
cmp byte [0x18021088d], sil
je case.default.0x18001b0de
mov eax, dword [str.p_A_B7]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1800eba60]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1800eba62]
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor cl, 0x35
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x36
xor al, 0x37
mov byte [rsp + 0x46], al
mov dword [rbp - 0x58], 0x64
mov dword [rbp - 0x40], 1
lea rsi, [0x1800ec030]
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c08]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.1800a1970
jmp case.default.0x18001b0de
movsd xmm0, qword [str.wS__]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebb40]
mov dword [rbp - 0x50], eax
movzx eax, byte [0x1800ebb44]
mov byte [rbp - 0x4c], al
mov r8d, r15d
cmp edi, 2
jl 0x18001c63f
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.wS__]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001c650
lea rdx, [0x180210881]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180210881], sil
je case.default.0x18001b0de
movaps xmm1, xmm7
movaps xmm0, xmm8
call fcn.180079f90
mov edx, dword [str.bBVQQ6]
mov dword [rsp + 0x40], edx
movzx eax, word [0x1800ebf94]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor al, 0x35
mov byte [rsp + 0x44], al
xor byte [rsp + 0x45], 0x36
mov dword [rbp - 0x58], 0x41c80000
mov dword [rbp - 0x40], esi
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c00]
mov edx, 8
lea rcx, [rsp + 0x40]
call fcn.1800a1970
jmp case.default.0x18001b0de
movsd xmm0, qword [str.xU___C_]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebb20]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebb24]
mov word [rbp - 0x4c], ax
movzx eax, byte [0x1800ebb26]
mov byte [rbp - 0x4a], al
mov r8d, r15d
cmp edi, 2
jl 0x18001c854
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.xU___C_]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001c860
lea rdx, [0x180210886]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
mov eax, dword [str.wJ4fWR_FFXL]
mov dword [rsp + 0x40], eax
cmp byte [0x1800ebb6f], sil
je 0x18001c982
cmp edi, 2
jl 0x18001c93c
movdqa xmm3, xmmword [0x1800fdb80]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1800fde00]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1800fde00]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x18001c982
lea r9, [rsp + 0x40]
mov r8d, r15d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001c950
lea rdx, [0x180210885]
lea rcx, [rsp + 0x40]
call fcn.18009dea0
cmp byte [0x180210885], sil
je case.default.0x18001b0de
movups xmm0, xmmword [0x1800eba68]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800eba78]
movups xmmword [rbp - 0x78], xmm1
movsd xmm0, qword [0x1800eba88]
movsd qword [rbp - 0x68], xmm0
mov eax, dword [0x1800eba90]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x1800eba94]
mov byte [rbp - 0x5c], al
mov r8d, r15d
cmp edi, 2
jl 0x18001cb17
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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, 0x28
jl 0x18001ca12
cmp r8d, 0x2d
jge 0x18001cb62
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2d
jl 0x18001cb30
lea rdx, [0x180210884]
lea rcx, [rsp + 0x78]
call fcn.18009dea0
movsd xmm0, qword [str.w_VQOS]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebe78]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebe7c]
mov word [rbp - 0x4c], ax
cmp byte [0x1800ebe7d], sil
je 0x18001ccf2
mov r8d, r15d
cmp edi, 2
jl 0x18001ccac
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.w_VQOS]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x18001ccc0
lea rdx, [0x180210883]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movzx eax, word [0x1800eba18]
mov word [rbp - 0x50], ax
movsd xmm0, qword [0x1800eba10]
movzx eax, byte [0x1800eba1a]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x180210882]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebef0]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800ebef8]
mov word [rsp + 0x48], ax
cmp byte [0x1800ebef9], sil
je 0x18001cdb3
mov byte [rsp + 0x40], 0x46
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor byte [rsp + 0x44], 0x35
xor byte [rsp + 0x45], 0x36
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor byte [rsp + 0x48], 0x39
xor byte [rsp + 0x49], 0x3a
mov dword [rbp - 0x58], 0x447a0000
mov dword [rbp - 0x40], 0x420c0000
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c04]
mov edx, 8
lea rcx, [rsp + 0x40]
call fcn.1800a1970
jmp case.default.0x18001b0de
mov eax, dword [0x1800ebb58]
mov dword [rbp - 0x58], eax
movzx eax, byte [0x1800ebb5c]
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor al, 0x35
mov byte [rbp - 0x54], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rbp - 0x58]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], sil
jne 0x18001ce37
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x10]
call fcn.1800138c0
nop
mov eax, dword [0x18021087c]
test al, al
je 0x18001d105
mov dword [rbp - 0x58], eax
lea r8, [rbp - 0x58]
lea rdx, [rsp + 0x50]
call fcn.180061db0
mov rdx, qword [rax]
add rdx, 0x28
lea rcx, [rsp + 0x78]
call fcn.180013700
nop
movsd xmm0, qword [str.a_P__F]
movsd qword [rbp - 0x40], xmm0
mov eax, dword [0x1800ebff0]
mov dword [rbp - 0x38], eax
movzx eax, byte [0x1800ebff4]
mov byte [rbp - 0x34], al
mov r8d, r15d
cmp edi, 2
jl 0x18001cfaa
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.a_P__F]
xorps xmm2, xmm0
movd dword [rbp - 0x40], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x3c]
xorps xmm2, xmm1
movd dword [rbp - 0x3c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x40]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001cfc0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x40]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18001d010
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x30]
call fcn.1800138c0
nop
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x30]
lea rcx, [rsp + 0x50]
call fcn.180022350
mov esi, 0x30
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x18001d07b
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d076
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022287
call fcn.1800b53a8
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp], xmm1
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x18001d0c9
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d0c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002228d
call fcn.1800b53a8
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x18001d105
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d100
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022293
call fcn.1800b53a8
cmp byte [0x180210860], 0
je 0x18001d36c
mov eax, dword [0x1800ebb84]
mov dword [rsp + 0x40], eax
cmp byte [str.4a_P__F], 0
je 0x18001d1f2
cmp edi, 2
jl 0x18001d1ac
movdqa xmm3, xmmword [0x1800fdb80]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1800fde00]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1800fde00]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x18001d1f2
lea r9, [rsp + 0x40]
mov r8d, r15d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001d1c0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rsp + 0x40]
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18001d210
mov r8, rbx
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1800138c0
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x18001d266
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d261
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022299
call fcn.1800b53a8
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp], xmm1
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
mov r11, r15
mov qword [rbp - 0x20], r15
or esi, 8
mov dword [rsp + 0x40], esi
mov r14, qword [0x180210cd8]
mov rbx, qword [r14]
cmp rbx, r14
je 0x18001d2de
nop dword [rax]
mov ecx, dword [rbx + 0x10]
call fcn.180058980
test al, al
je 0x18001d2cf
mov rdx, qword [rbp - 0x28]
cmp rdx, qword [rbp - 0x20]
je 0x18001d2c2
mov eax, dword [rbx + 0x10]
mov dword [rdx], eax
add qword [rbp - 0x28], 4
jmp 0x18001d2cf
lea r8, [rbx + 0x10]
lea rcx, [rbp - 0x30]
call fcn.180057fc0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
jne 0x18001d2a0
mov r11, qword [rbp - 0x20]
mov r9, qword [rbp - 0x28]
mov r10, qword [rbp - 0x30]
sub r9, r10
sar r9, 2
test r9, r9
je 0x18001d32b
mov r8d, r15d
mov rdx, r10
nop dword [rax + rax]
mov ecx, dword [rdx]
lea eax, [rcx - 1]
cmp eax, 2
jbe 0x18001d31c
cmp ecx, 6
je 0x18001d31c
mov dword [0x18021087c], ecx
mov byte [0x180210860], 0
inc r8d
add rdx, 4
movsxd rax, r8d
cmp rax, r9
jb 0x18001d300
test r10, r10
je 0x18001d36c
sub r11, r10
sar r11, 2
lea rdx, [r11*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x18001d364
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022299
mov rcx, r10
call fcn.1800b53a8
mov dword [rbp - 0x58], 0x437a0000
mov dword [rbp - 0x54], 0x42200000
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova rcx, qword [rbp - 0x10]
lea rdx, [rbp - 0x58]
call fcn.18009cdc0
test al, al
je 0x18001d39c
mov byte [0x180210860], 1
movups xmm0, xmmword [str.a_Z_G_CQC_ezLK__17d]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebf50]
movsd qword [rbp - 0x20], xmm0
mov eax, dword [0x1800ebf58]
mov dword [rbp - 0x18], eax
cmp byte [0x1800ebf5b], 0
je 0x18001d552
mov r8d, r15d
cmp edi, 2
jl 0x18001d515
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001d410
cmp r8d, 0x1c
jge 0x18001d552
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x18001d520
lea rdx, [0x180210878]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebb28]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebb30]
mov dword [rbp - 0x50], eax
cmp byte [0x1800ebb33], 0
je 0x18001d6d2
mov r8d, r15d
cmp edi, 2
jl 0x18001d690
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebb28]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001d6a0
lea rdx, [0x180210880]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180210880], 0
je 0x18001d8d0
mov dword [rbp - 0x58], 0x41200000
mov dword [rbp - 0x40], 0
movups xmm1, xmmword [str.pGG_]
movups xmmword [rbp - 0x30], xmm1
mov eax, dword [0x1800ebd80]
mov dword [rbp - 0x20], eax
movzx eax, word [0x1800ebd84]
mov word [rbp - 0x1c], ax
movzx eax, byte [0x1800ebd86]
mov byte [rbp - 0x1a], al
mov r8d, r15d
cmp edi, 2
jl 0x18001d865
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001d760
cmp r8d, 0x17
jge 0x18001d8a2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x17
jl 0x18001d870
lea rbx, str._.3f
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bf4]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
movups xmm0, xmmword [0x1800eb9a0]
movups xmmword [rbp - 0x30], xmm0
mov eax, dword [0x1800eb9b0]
mov dword [rbp - 0x20], eax
cmp byte [0x1800eb9b3], 0
je 0x18001da72
mov r8d, r15d
cmp edi, 2
jl 0x18001da35
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001d930
cmp r8d, 0x14
jge 0x18001da72
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x14
jl 0x18001da40
mov dword [rbp - 0x58], 0x1f4
mov dword [rbp - 0x40], 1
lea rsi, [0x1800ec030]
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bf8]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
movups xmm0, xmmword [0x1800ebac8]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebad8]
mov word [rbp - 0x20], ax
cmp byte [0x1800ebad9], 0
je 0x18001dc52
mov r8d, r15d
cmp edi, 2
jl 0x18001dc15
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001db10
cmp r8d, 0x12
jge 0x18001dc52
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x18001dc20
mov dword [rbp - 0x58], 0x1f4
mov dword [rbp - 0x40], 1
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bfc]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe case.default.0x18001b0de
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002216e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180022281
jmp 0x18002216e
mov qword [rbp - 0x40], rsi
mov eax, dword [str.r_RG_6]
mov dword [rbp - 0x58], eax
movzx eax, word [0x1800ebfe0]
mov word [rbp - 0x54], ax
mov byte [rbp - 0x58], 0x43
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor al, 0x35
mov byte [rbp - 0x54], al
xor byte [rbp - 0x53], 0x36
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.18009cdc0
jmp case.default.0x18001b0de
movsd xmm0, qword [str.fWRDZX]
movsd qword [rbp - 0x58], xmm0
movzx ecx, word [0x1800ebb68]
mov word [rbp - 0x50], cx
movzx eax, byte [0x1800ebb6a]
mov byte [rbp - 0x58], 0x57
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor cl, 0x39
mov byte [rbp - 0x50], cl
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x18021088f]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
mov dword [rbp - 0x58], 0x1f4
mov dword [rbp - 0x40], 1
movups xmm0, xmmword [0x1800ebd38]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [str._17___HsG_XPB]
movsd qword [rbp - 0x20], xmm0
cmp byte [0x1800ebd4f], sil
je 0x18001df22
cmp edi, 2
jl 0x18001dedf
movdqa xmm5, xmmword [0x1800fdb80]
mov edx, r15d
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov r8d, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001dde0
jmp 0x18001df22
lea r9, [rbp - 0x30]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x18001def0
lea rsi, [0x1800ec030]
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c28]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
mov rax, qword [0x1802107b8]
mov r8, qword [rax + 0x4000]
movss xmm7, dword [0x1800fd958]
cmp byte [r8 + 0xc3], r15b
jne 0x18001df97
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r15
je 0x18001df8f
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm7
call fcn.18009ede0
movsd xmm0, qword [0x1800ebdb0]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [str.ik_]
mov dword [rbp - 0x50], eax
cmp byte [0x1800ebdbb], r15b
je 0x18001e102
mov r8d, r15d
cmp edi, 2
jl 0x18001e0c5
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebdb0]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001e0d0
lea rdx, [0x1802107f0]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [str.gW__VZR]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebe90]
movsd qword [rbp - 0x20], xmm0
movzx eax, byte [0x1800ebe98]
mov byte [rbp - 0x18], al
mov r8d, r15d
cmp edi, 2
jl 0x18001e275
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001e170
cmp r8d, 0x19
jge 0x18001e2b2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x18001e280
mov dword [rbp - 0x58], 0x1f4
mov dword [rbp - 0x40], 1
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111b20]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
mov rax, qword [0x1802107b8]
mov r8, qword [rax + 0x4000]
cmp byte [r8 + 0xc3], r15b
jne 0x18001e326
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r15
je 0x18001e31e
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm7
call fcn.18009ede0
movzx eax, word [0x1800ebbd0]
mov word [rbp - 0x50], ax
movsd xmm0, qword [0x1800ebbc8]
movzx eax, byte [0x1800ebbd2]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x50
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x180111c2e]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180111c2e], r15b
je case.default.0x18001b0de
mov eax, dword [str.s_K4]
mov dword [rsp + 0x40], eax
cmp byte [0x1800ebe23], r15b
je 0x18001e472
cmp edi, 2
jl 0x18001e429
movdqa xmm3, xmmword [0x1800fdb80]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1800fde00]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1800fde00]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x18001e472
lea r9, [rsp + 0x40]
mov r8d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x18001e440
lea rdx, [0x180111c59]
lea rcx, [rsp + 0x40]
call fcn.18009dea0
cmp byte [0x180111c59], r15b
je 0x18001ea90
mov rax, qword [0x1800ebea0]
mov qword [rbp - 0x58], rax
cmp byte [0x1800ebea7], r15b
je 0x18001e5e2
cmp edi, 2
jl 0x18001e5a9
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x58]
xorps xmm2, xmm1
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
jmp 0x18001e5e2
lea r9, [rbp - 0x58]
mov r8d, r15d
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001e5b0
lea rax, [rbp - 0x58]
mov qword [rbp - 0x10], rax
movsd xmm0, qword [0x1800ebab8]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebac0]
mov dword [rbp - 0x50], eax
cmp byte [0x1800ebac3], r15b
je 0x18001e762
mov r8d, r15d
cmp edi, 2
jl 0x18001e718
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebab8]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001e730
lea rax, [rbp - 0x58]
mov qword [rbp - 8], rax
mov rax, qword [0x1800ebd30]
mov qword [rbp - 0x58], rax
cmp byte [0x1800ebd37], r15b
je 0x18001e8c2
cmp edi, 2
jl 0x18001e883
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x58]
xorps xmm2, xmm1
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
jmp 0x18001e8c2
lea r9, [rbp - 0x58]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18001e890
lea rax, [rbp - 0x58]
mov qword [rbp], rax
movsd xmm0, qword [0x1800ebc38]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebc40]
mov dword [rbp - 0x50], eax
cmp byte [0x1800ebc43], r15b
je 0x18001ea42
mov r8d, r15d
cmp edi, 2
jl 0x18001e9f8
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebc38]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x18001ea10
lea rax, [rbp - 0x58]
mov qword [rbp + 8], rax
movsd xmm0, qword [0x1800ebc28]
movzx eax, byte [0x1800ebc30]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x42
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea r9, [rbp - 0x10]
lea rcx, [rbp - 0x58]
call fcn.18009feb0
movsd xmm0, qword [str.bYVXPBXV9]
movzx eax, byte [0x1800ebde8]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea rdx, [0x180111c58]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [0x1800ebe40]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800ebe50]
movups xmmword [rbp - 0x78], xmm1
mov eax, dword [0x1800ebe60]
mov dword [rbp - 0x68], eax
movzx eax, byte [0x1800ebe64]
mov byte [rbp - 0x64], al
mov r8d, r15d
cmp edi, 2
jl 0x18001ec45
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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, 0x20
jl 0x18001eb40
cmp r8d, 0x25
jge 0x18001ec82
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x25
jl 0x18001ec50
lea rdx, [0x180111c2c]
lea rcx, [rsp + 0x78]
call fcn.18009dea0
movsd xmm0, qword [0x1800eb9e8]
movzx eax, byte [0x1800eb9f0]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x44
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea rdx, [0x180111c2f]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
mov eax, dword [0x1800ec010]
mov dword [rbp - 0x58], eax
movzx eax, byte [0x1800ec014]
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor al, 0x35
mov byte [rbp - 0x54], al
lea rdx, [0x180111c2d]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [0x1800ebb08]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [str.n_ZLRP_]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebb14]
mov word [rbp - 0x4c], ax
movzx eax, byte [0x1800ebb16]
mov byte [rbp - 0x4a], al
mov r8d, r15d
cmp edi, 2
jl 0x18001ee47
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebb08]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001ee60
lea rdx, [0x180111c5a]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
mov rax, qword [0x1802107b8]
mov r8, qword [rax + 0x4000]
cmp byte [r8 + 0xc3], r15b
jne 0x18001eee1
mov edx, dword [r8 + 0x1c4]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1b8], r15
je 0x18001eed9
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm7
call fcn.18009ede0
movzx eax, word [0x1800ebeb0]
mov word [rsp + 0x48], ax
movsd xmm0, qword [0x1800ebea8]
movzx eax, byte [0x1800ebeb2]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], 0x50
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor byte [rsp + 0x44], 0x35
xor byte [rsp + 0x45], 0x36
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor byte [rsp + 0x48], 0x39
xor byte [rsp + 0x49], 0x3a
xor al, 0x3b
mov byte [rsp + 0x4a], al
lea rdx, [0x180111c38]
lea rcx, [rsp + 0x40]
call fcn.18009dea0
lea rbx, str._.3f
cmp byte [0x180111c38], r15b
je 0x18001f7e2
movups xmm0, xmmword [0x1800ebb48]
movups xmmword [rbp - 0x58], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x18001f102
cmp edi, 2
jl 0x18001f0bf
movdqa xmm5, xmmword [0x1800fdb80]
mov edx, r15d
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x54]
mov r8d, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001efc0
jmp 0x18001f102
lea r9, [rbp - 0x58]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x18001f0d0
lea rdx, [0x180111c39]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [str.aSDZ]
movups xmmword [rbp - 0x58], xmm0
movzx eax, byte [0x1800ebfd8]
mov byte [rbp - 0x48], al
mov r8d, r15d
cmp edi, 2
jl 0x18001f266
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x54]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001f161
cmp r8d, 0x11
jge 0x18001f2a2
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x18001f270
mov r8d, 2
lea rdx, [0x180111c40]
lea rcx, [rbp - 0x58]
call fcn.1800a9080
test al, al
je 0x18001f2c8
mov rcx, qword [0x180210750]
mov rax, qword [rcx]
call qword [rax]
mov dword [rbp - 0x58], 0x42c80000
mov dword [rbp - 0x40], r15d
movups xmm0, xmmword [0x1800ebeb8]
movups xmmword [rbp - 0x30], xmm0
movzx eax, byte [0x1800ebec8]
mov byte [rbp - 0x20], al
mov r8d, r15d
cmp edi, 2
jl 0x18001f427
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001f322
cmp r8d, 0x11
jge 0x18001f472
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x18001f440
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c3c]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
test al, al
je 0x18001f4a9
mov rcx, qword [0x180210750]
mov rax, qword [rcx]
call qword [rax]
mov eax, dword [0x1800ebab0]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebab4]
mov word [rbp - 0x4c], ax
movzx eax, byte [0x1800ebab6]
movsd xmm0, qword [0x1800ebaa8]
mov byte [rbp - 0x4a], al
movsd qword [rbp - 0x58], xmm0
mov r8d, r15d
cmp edi, 2
jl 0x18001f5df
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebaa8]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x18001f5f0
lea rdx, [0x180111c3a]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movups xmm0, xmmword [0x1800ebf00]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebf10]
movsd qword [rbp - 0x20], xmm0
movzx eax, byte [0x1800ebf18]
mov byte [rbp - 0x18], al
mov r8d, r15d
cmp edi, 2
jl 0x18001f795
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001f690
cmp r8d, 0x19
jge 0x18001f7d2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x18001f7a0
lea rdx, [0x180111c3b]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
mov rax, qword [0x1802107b8]
mov rdx, qword [rax + 0x4000]
cmp byte [rdx + 0xc3], r15b
jne 0x18001f823
mov r8d, dword [rdx + 0x1c4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1b8], r15
je 0x18001f81b
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm7
call fcn.18009ede0
mov eax, dword [0x1800ebbf8]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800ebbfc]
movsd xmm0, qword [0x1800ebbf0]
mov byte [rsp + 0x4c], al
movsd qword [rsp + 0x40], xmm0
mov r8d, r15d
cmp edi, 2
jl 0x18001f954
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1800ebbf0]
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18001f960
lea rdx, [0x180111c10]
lea rcx, [rsp + 0x40]
call fcn.18009dea0
cmp byte [0x180111c10], r15b
je 0x1800202a2
movups xmm0, xmmword [0x1800ebc48]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebc58]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800ebc5a]
mov byte [rbp - 0x1e], al
mov r8d, r15d
cmp edi, 2
jl 0x18001fb15
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001fa10
cmp r8d, 0x13
jge 0x18001fb52
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x18001fb20
mov r8d, 2
lea rdx, [0x180111c18]
lea rcx, [rbp - 0x30]
call fcn.1800a9080
test al, al
je 0x18001fb78
mov rcx, qword [0x180210758]
mov rax, qword [rcx]
call qword [rax]
mov dword [rbp - 0x58], 0x42c80000
mov dword [rbp - 0x40], r15d
movups xmm0, xmmword [0x1800ebb88]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebb98]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800ebb9a]
mov byte [rbp - 0x1e], al
mov r8d, r15d
cmp edi, 2
jl 0x18001fce5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001fbe0
cmp r8d, 0x13
jge 0x18001fd22
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x18001fcf0
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c14]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
test al, al
je 0x18001fd59
mov rcx, qword [0x180210758]
mov rax, qword [rcx]
call qword [rax]
movups xmm0, xmmword [0x1800ebf70]
movups xmmword [rbp - 0x30], xmm0
mov eax, dword [str._00_F]
mov dword [rbp - 0x20], eax
movzx eax, word [0x1800ebf84]
mov word [rbp - 0x1c], ax
cmp byte [0x1800ebf85], r15b
je 0x18001ff02
mov r8d, r15d
cmp edi, 2
jl 0x18001fec5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001fdc0
cmp r8d, 0x16
jge 0x18001ff02
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x16
jl 0x18001fed0
mov dword [rbp - 0x58], 0xa
mov dword [rbp - 0x40], 1
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c24]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
movups xmm0, xmmword [0x1800eba48]
movups xmmword [rbp - 0x30], xmm0
movzx eax, byte [0x1800eba58]
mov byte [rbp - 0x20], al
mov r8d, r15d
cmp edi, 2
jl 0x180020095
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x18001ff90
cmp r8d, 0x11
jge 0x1800200d2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x1800200a0
lea rdx, [0x180111c12]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movups xmm0, xmmword [0x1800ebce8]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebcf8]
movsd qword [rbp - 0x20], xmm0
movzx eax, word [0x1800ebd00]
mov word [rbp - 0x18], ax
movzx eax, byte [0x1800ebd02]
mov byte [rbp - 0x16], al
mov r8d, r15d
cmp edi, 2
jl 0x180020255
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180020150
cmp r8d, 0x1b
jge 0x180020292
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x180020260
lea rdx, [0x180111c13]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
mov rax, qword [0x1802107b8]
mov rdx, qword [rax + 0x4000]
cmp byte [rdx + 0xc3], r15b
jne 0x1800202e3
mov r8d, dword [rdx + 0x1c4]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1b8], r15
je 0x1800202db
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm7
call fcn.18009ede0
movups xmm0, xmmword [0x1800ebe08]
movups xmmword [rbp - 0x30], xmm0
mov eax, dword [0x1800ebe18]
mov dword [rbp - 0x20], eax
movzx eax, byte [0x1800ebe1c]
mov byte [rbp - 0x1c], al
mov r8d, r15d
cmp edi, 2
jl 0x180020445
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180020340
cmp r8d, 0x15
jge 0x180020482
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x180020450
lea rdx, [0x180111c30]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
cmp byte [0x180111c30], r15b
je case.default.0x18001b0de
movups xmm0, xmmword [0x1800ebc90]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebca0]
movsd qword [rbp - 0x20], xmm0
movzx eax, word [0x1800ebca8]
mov word [rbp - 0x18], ax
cmp byte [0x1800ebca9], r15b
je 0x180020652
mov r8d, r15d
cmp edi, 2
jl 0x180020615
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180020510
cmp r8d, 0x1a
jge 0x180020652
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1a
jl 0x180020620
mov dword [rbp - 0x58], 0x42480000
mov dword [rbp - 0x40], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c54]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
mov dword [rbp - 0x58], 0x42480000
mov dword [rbp - 0x40], 0x3f800000
movups xmm0, xmmword [str.TUGVDR_W]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebdd0]
movsd qword [rbp - 0x20], xmm0
movzx eax, word [0x1800ebdd8]
mov word [rbp - 0x18], ax
movzx eax, byte [0x1800ebdda]
mov byte [rbp - 0x16], al
mov r8d, r15d
cmp edi, 2
jl 0x180020805
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180020700
cmp r8d, 0x1b
jge 0x180020842
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1b
jl 0x180020810
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c4c]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
movups xmm0, xmmword [0x1800ebd08]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [0x1800ebd18]
movups xmmword [rbp - 0x78], xmm1
mov eax, dword [0x1800ebd28]
mov dword [rbp - 0x68], eax
mov r8d, r15d
cmp edi, 2
jl 0x1800209d5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x7c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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, 0x20
jl 0x1800208d0
cmp r8d, 0x24
jge 0x180020a12
movsxd rax, r8d
lea r9, [rsp + 0x78]
add r9, rax
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x24
jl 0x1800209e0
lea rdx, [0x180210890]
lea rcx, [rsp + 0x78]
call fcn.18009dea0
cmp byte [0x180210890], r15b
jne case.default.0x18001b0de
movups xmm0, xmmword [0x1800ebbd8]
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [0x1800ebbe8]
movsd qword [rbp - 0x20], xmm0
cmp byte [str.Ha_P__F], r15b
je 0x180020bd2
cmp edi, 2
jl 0x180020b8f
movdqa xmm5, xmmword [0x1800fdb80]
mov edx, r15d
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180020a90
jmp 0x180020bd2
lea r9, [rbp - 0x30]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x180020ba0
mov dword [rbp - 0x58], 0xb4
mov dword [rbp - 0x40], 1
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111c50]
mov edx, 4
lea rcx, [rbp - 0x30]
call fcn.1800a1970
jmp case.default.0x18001b0de
movsd xmm0, qword [str.p_VZB]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebf68]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebf6c]
mov word [rbp - 0x4c], ax
movzx eax, byte [0x1800ebf6e]
mov byte [rbp - 0x4a], al
mov r8d, r15d
cmp edi, 2
jl 0x180020d42
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.p_VZB]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x180020d50
lea rdx, [0x180111b99]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180111b99], sil
je case.default.0x18001b0de
mov eax, dword [0x1800ebb58]
mov dword [rbp - 0x58], eax
movzx eax, byte [0x1800ebb5c]
mov byte [rbp - 0x58], 0x4e
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor al, 0x35
mov byte [rbp - 0x54], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rbp - 0x58]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], sil
jne 0x180020de1
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x10]
call fcn.1800138c0
nop
mov eax, dword [0x180111bd0]
test al, al
je 0x180020f85
mov dword [rbp - 0x58], eax
lea r8, [rbp - 0x58]
lea rdx, [rsp + 0x50]
call fcn.180061db0
mov rdx, qword [rax]
add rdx, 0x28
lea rcx, [rsp + 0x78]
call fcn.180013700
nop
movsd xmm0, qword [0x1800ebd88]
movsd qword [rbp - 0x40], xmm0
movzx eax, word [0x1800ebd90]
mov word [rbp - 0x38], ax
cmp byte [0x1800ebd91], 0
je 0x180020e72
mov byte [rbp - 0x40], 0x41
xor byte [rbp - 0x3f], 0x32
xor byte [rbp - 0x3e], 0x33
xor byte [rbp - 0x3d], 0x34
xor byte [rbp - 0x3c], 0x35
xor byte [rbp - 0x3b], 0x36
xor byte [rbp - 0x3a], 0x37
xor byte [rbp - 0x39], 0x38
xor byte [rbp - 0x38], 0x39
xor byte [rbp - 0x37], 0x3a
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x40]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180020e90
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x30]
call fcn.1800138c0
nop
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x30]
lea rcx, [rsp + 0x50]
call fcn.180022350
mov esi, 3
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x180020efb
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020ef6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002229f
call fcn.1800b53a8
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp], xmm1
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x180020f49
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020f43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800222a5
call fcn.1800b53a8
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180020f85
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020f80
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800222ab
call fcn.1800b53a8
cmp byte [0x180210860], 0
je 0x1800211ec
mov eax, dword [0x1800ebb84]
mov dword [rsp + 0x40], eax
cmp byte [str.4a_P__F], 0
je 0x180021072
cmp edi, 2
jl 0x18002102c
movdqa xmm3, xmmword [0x1800fdb80]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1800fde00]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1800fde00]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1800fdd20]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x180021072
lea r9, [rsp + 0x40]
mov r8d, r15d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x180021040
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rsp + 0x40]
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x180021090
mov r8, rbx
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1800138c0
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x1800210e6
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800210e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800222b1
call fcn.1800b53a8
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp], xmm1
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
mov r11, r15
mov qword [rbp - 0x20], r15
or esi, 4
mov dword [rsp + 0x40], esi
mov r14, qword [0x180210cd8]
mov rbx, qword [r14]
cmp rbx, r14
je 0x18002115e
nop dword [rax]
mov ecx, dword [rbx + 0x10]
call fcn.180058980
test al, al
je 0x18002114f
mov rdx, qword [rbp - 0x28]
cmp rdx, qword [rbp - 0x20]
je 0x180021142
mov eax, dword [rbx + 0x10]
mov dword [rdx], eax
add qword [rbp - 0x28], 4
jmp 0x18002114f
lea r8, [rbx + 0x10]
lea rcx, [rbp - 0x30]
call fcn.180057fc0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
jne 0x180021120
mov r11, qword [rbp - 0x20]
mov r9, qword [rbp - 0x28]
mov r10, qword [rbp - 0x30]
sub r9, r10
sar r9, 2
test r9, r9
je 0x1800211ab
mov r8d, r15d
mov rdx, r10
nop dword [rax + rax]
mov ecx, dword [rdx]
lea eax, [rcx - 1]
cmp eax, 2
jbe 0x18002119c
cmp ecx, 6
je 0x18002119c
mov dword [0x180111bd0], ecx
mov byte [0x180210860], 0
inc r8d
add rdx, 4
movsxd rax, r8d
cmp rax, r9
jb 0x180021180
test r10, r10
je 0x1800211ec
sub r11, r10
sar r11, 2
lea rdx, [r11*4]
mov rax, r10
cmp rdx, 0x1000
jb 0x1800211e4
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800222b1
mov rcx, r10
call fcn.1800b53a8
mov dword [rbp - 0x58], 0x437a0000
mov dword [rbp - 0x54], 0x42200000
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova rcx, qword [rbp - 0x10]
lea rdx, [rbp - 0x58]
call fcn.18009cdc0
movsd xmm0, qword [str.b__Q_B]
movsd qword [rbp - 0x58], xmm0
test al, al
movzx eax, word [0x1800ec020]
mov word [rbp - 0x50], ax
movzx eax, byte [0x1800ec022]
je 0x180021240
mov byte [0x180210860], 1
nop dword [rax + rax]
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x18021083f]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x18021083f], 0
je 0x180021442
movups xmm0, xmmword [0x1800ebc70]
movups xmmword [rbp - 0x30], xmm0
mov eax, dword [0x1800ebc80]
mov dword [rbp - 0x20], eax
movzx eax, word [0x1800ebc84]
mov word [rbp - 0x1c], ax
movzx eax, byte [0x1800ebc86]
mov byte [rbp - 0x1a], al
mov r8d, r15d
cmp edi, 2
jl 0x1800213f5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x1800212f0
cmp r8d, 0x17
jge 0x180021432
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x17
jl 0x180021400
lea rdx, [0x18021083e]
lea rcx, [rbp - 0x30]
call fcn.18009dea0
movsd xmm0, qword [str.bZC]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [0x1800ebcb8]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebcbc]
mov word [rbp - 0x4c], ax
cmp byte [0x1800ebcbd], 0
je 0x1800215c2
mov r8d, r15d
cmp edi, 2
jl 0x18002157b
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.bZC]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x180021590
lea rdx, [0x180111c61]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [0x1800eb9b8]
movzx eax, byte [0x1800eb9c0]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea rdx, [0x180111c62]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [str.bFZWO]
movsd qword [rbp - 0x58], xmm0
movzx ecx, word [0x1800ebaa0]
mov word [rbp - 0x50], cx
movzx eax, byte [0x1800ebaa2]
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor cl, 0x39
mov byte [rbp - 0x50], cl
xor byte [rbp - 0x4f], 0x3a
xor al, 0x3b
mov byte [rbp - 0x4e], al
lea rdx, [0x180111b9a]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [str.g___WZR]
movsd qword [rbp - 0x58], xmm0
mov eax, dword [str.zR_V_]
mov dword [rbp - 0x50], eax
movzx eax, word [0x1800ebafc]
mov word [rbp - 0x4c], ax
cmp byte [0x1800ebafd], 0
je 0x1800217f2
mov r8d, r15d
cmp edi, 2
jl 0x1800217b2
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.g___WZR]
xorps xmm2, xmm0
movd dword [rbp - 0x58], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x54]
xorps xmm2, xmm1
movd dword [rbp - 0x54], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x58]
add r9, rax
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x1800217c0
lea rdx, [0x180111be4]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
movsd xmm0, qword [str.bFRZQWE9]
movzx eax, byte [0x1800ebae8]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x53
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea rdx, [0x180111c60]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
lea rbx, str._.3f
lea rsi, [0x1800ec030]
cmp byte [0x180111c60], 0
je 0x180021be7
movsd xmm0, qword [str.bFRZQWE_]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800ebc68]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800ebc6c]
mov byte [rsp + 0x4c], al
mov r8d, r15d
cmp edi, 2
jl 0x180021997
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.bFRZQWE_]
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x1800219b0
mov dword [rbp - 0x58], 0xb4
mov dword [rbp - 0x40], r15d
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111be0]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.1800a1970
movups xmm0, xmmword [0x1800ebba0]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebbb0]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800ebbb2]
mov byte [rbp - 0x1e], al
mov r8d, r15d
cmp edi, 2
jl 0x180021b75
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180021a70
cmp r8d, 0x13
jge 0x180021bb2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x180021b80
mov dword [rbp - 0x58], 0x41a00000
mov dword [rbp - 0x40], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bdc]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
movsd xmm0, qword [str.rGP]
movsd qword [rbp - 0x58], xmm0
movzx eax, word [0x1800ebfc0]
mov word [rbp - 0x50], ax
cmp byte [0x1800ebfc1], 0
je 0x180021c30
mov byte [rbp - 0x58], 0x43
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
xor byte [rbp - 0x4f], 0x3a
lea rdx, [0x180111be5]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180111be5], 0
je 0x180021d60
movsd xmm0, qword [0x1800eb9d8]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800eb9e0]
mov word [rsp + 0x48], ax
cmp byte [0x1800eb9e1], 0
je 0x180021ca2
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor byte [rsp + 0x44], 0x35
xor byte [rsp + 0x45], 0x36
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor byte [rsp + 0x48], 0x39
xor byte [rsp + 0x49], 0x3a
mov dword [rbp - 0x58], 0xb4
mov dword [rbp - 0x40], r15d
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bec]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.1800a1970
movsd xmm0, qword [str.b__AV:]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1800eba00]
mov word [rsp + 0x48], ax
cmp byte [0x1800eba01], 0
je 0x180021d2a
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor byte [rsp + 0x44], 0x35
xor byte [rsp + 0x45], 0x36
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor byte [rsp + 0x48], 0x39
xor byte [rsp + 0x49], 0x3a
mov dword [rbp - 0x58], 0x41a00000
mov dword [rbp - 0x40], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111be8]
mov edx, 8
lea rcx, [rsp + 0x40]
call fcn.1800a1970
movsd xmm0, qword [str.fWR_FFXL9]
movzx eax, byte [0x1800ebbc0]
movsd qword [rbp - 0x58], xmm0
mov byte [rbp - 0x58], 0x57
xor byte [rbp - 0x57], 0x32
xor byte [rbp - 0x56], 0x33
xor byte [rbp - 0x55], 0x34
xor byte [rbp - 0x54], 0x35
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor al, 0x39
mov byte [rbp - 0x50], al
lea rdx, [0x180111b98]
lea rcx, [rbp - 0x58]
call fcn.18009dea0
cmp byte [0x180111b98], 0
je 0x180022138
movsd xmm0, qword [str.fWR_FFXL]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [0x1800ebdf8]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800ebdfc]
mov byte [rsp + 0x4c], al
mov r8d, r15d
cmp edi, 2
jl 0x180021ee7
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm2, xmmword [0x1800fdb80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
mov eax, dword [0x1800fdd20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.fWR_FFXL]
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x1800fdba0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800fdbd0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x180021f00
mov dword [rbp - 0x58], 0xb4
mov dword [rbp - 0x40], r15d
mov qword [rsp + 0x28], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bd8]
mov edx, 4
lea rcx, [rsp + 0x40]
call fcn.1800a1970
movups xmm0, xmmword [0x1800ebb70]
movups xmmword [rbp - 0x30], xmm0
movzx eax, word [0x1800ebb80]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1800ebb82]
mov byte [rbp - 0x1e], al
mov r8d, r15d
cmp edi, 2
jl 0x1800220c5
movdqa xmm5, xmmword [0x1800fdb80]
movdqa xmm4, xmmword [0x1800fde00]
movdqa xmm6, xmmword [0x1800fdbd0]
movdqa xmm0, xmmword [0x1800fdd20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x50]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800fdcf0]
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 0x180021fc0
cmp r8d, 0x13
jge 0x180022102
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x31
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x1800220d0
mov dword [rbp - 0x58], 0x41a00000
mov dword [rbp - 0x40], 0x3f800000
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [0x180111bd4]
mov edx, 8
lea rcx, [rbp - 0x30]
call fcn.1800a1970
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe case.default.0x18001b0de
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002216e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002227b
call fcn.1800b53a8
call fcn.180074af0
cmp byte [0x180111bf0], 0
je 0x180022243
mov rbx, qword [0x1802107b8]
test rbx, rbx
jne 0x1800221ae
xor r8d, r8d
lea rdx, [0x1800efa88]
lea rcx, str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call fcn.1800ca978
mov rbx, qword [0x1802107b8]
movsd xmm0, qword [rbx + 0xe40]
movsd qword [rbp - 0x58], xmm0
cmp dword [rbx + 0x4b08], 0
jg 0x1800221da
xor r8d, r8d
lea rdx, [0x1800efa88]
lea rcx, str.i___0__i___Size
call fcn.1800ca978
mov rax, qword [rbx + 0x4b10]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.18006b5c0
mov rbx, rax
mov dword [rsp + 0x28], 0xf
movss xmm0, dword [0x1800fd9dc]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm8
movss xmm2, dword [0x1800fd9d4]
lea rdx, [rbp - 0x58]
mov rcx, rax
call fcn.18008f1a0
mov r9d, 0xffffffff
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.18008e700
mov dword [rbx + 0x78], r15d
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.1800b5010
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1800bc20c
int3
call fcn.1800bc20c
nop
call fcn.1800bc20c
nop
call fcn.1800bc20c
nop
call fcn.1800bc20c
int3
call fcn.1800bc20c
nop
call fcn.1800bc20c
nop
call fcn.1800bc20c
nop
call fcn.1800bc20c
int3
call fcn.1800bc20c
int3