Function at 0x1800774a0
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 r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x180152040]
xor rax, rsp
mov qword [rbp - 0x30], rax
call fcn.180028a60
mov qword [rsp + 0x70], 0
movsd xmm0, qword [0x18013b310]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [0x18013b318]
mov dword [rsp + 0x58], eax
movdqa xmm11, xmmword [0x18013d190]
movdqa xmm7, xmmword [0x18013d140]
movdqa xmm8, xmmword [0x18013d130]
movdqa xmm9, xmmword [0x18013d110]
movdqa xmm14, xmmword [0x18013d1e0]
movdqa xmm12, xmmword [str.::::]
movdqa xmm6, xmmword [0x18013d300]
xor r13d, r13d
mov r12d, dword [0x180152098]
cmp byte [0x18013b31b], r13b
je 0x1800776f9
mov r8d, r13d
cmp r12d, 2
jl 0x1800776c4
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm14
movd xmm0, dword [0x18013b310]
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm14
movd xmm0, dword [rsp + 0x54]
xorps xmm1, xmm0
movd dword [rsp + 0x54], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm14
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
jmp 0x1800776f9
lea r9, [rsp + 0x50]
nop dword [rax]
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x1800776d0
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x50]
mov rdi, 0xffffffffffffffff
mov r8, rdi
inc r8
cmp byte [rax + r8], r13b
jne 0x180077717
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.180006f30
nop
lea rsi, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rsi, qword [rbp - 0x50]
movzx eax, word [0x18013ab9c]
mov word [rsp + 0x40], ax
cmp byte [0x18013ab9d], 0
je 0x18007775c
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x34
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x40]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x180077774
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea r15, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova r15, qword [rsp + 0x78]
mov rcx, qword [0x1803f1f90]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4000]
movsxd r8, dword [rbx + 0x100]
mov rax, qword [rbx + 0x108]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, rsi
call fcn.1800186d0
mov r14d, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x404c], eax
jne 0x1800777f4
mov r8, rsi
mov edx, 0xb
mov ecx, eax
call fcn.1800303c0
mov rdx, qword [0x1803f72e8]
add rdx, 0x18
mov ecx, 2
call fcn.1800193b0
mov rdx, qword [0x1803f72e8]
add rdx, 0x20
mov ecx, 0xe
call fcn.1800193b0
lea r9, [rsp + 0x70]
mov r8d, r14d
mov rdx, rsi
mov rcx, r15
call fcn.18000a300
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180077871
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007786c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007786c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqa xmm10, xmmword [0x18013cf80]
movdqu xmmword [rbp - 0x78], xmm10
mov byte [rsp + 0x78], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x1800778c3
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800778be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800778be
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
mov esi, r13d
mov rcx, qword [0x1803f21a0]
mov r8, qword [0x1803f2198]
sub rcx, r8
movabs r14, 0x4924924924924925
mov rax, r14
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x180077968
mov r9, r13
mov rbx, r13
nop dword [rax]
imul rax, r9, 0x38
lea rdx, [r8 + 0x2c]
add rdx, rax
lea rcx, [rbx + r8]
cmp qword [rcx + 0x18], 0xf
jbe 0x180077919
mov rcx, qword [rcx]
mov dword [rsp + 0x30], 6
mov dword [rsp + 0x20], 6
lea r9, str.None
call fcn.180013830
inc esi
add rbx, 0x38
movsxd r9, esi
mov rcx, qword [0x1803f21a0]
mov r8, qword [0x1803f2198]
sub rcx, r8
mov rax, r14
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r9, rdx
jb 0x180077900
call fcn.18000abd0
call fcn.180028ba0
movss xmm1, dword [0x18013bdcc]
xorps xmm0, xmm0
call fcn.180028770
call fcn.180028a60
mov qword [rsp + 0x70], 0
movups xmm2, xmmword [0x18013ac00]
movups xmmword [rsp + 0x50], xmm2
movzx eax, byte [0x18013ac10]
mov byte [rsp + 0x60], al
mov r8d, r13d
cmp r12d, 2
jl 0x180077b65
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm1, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm3, xmmword [0x18013d150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm3, xmm0
andps xmm3, xmm11
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm3, xmm1
movd dword [rsp + 0x5c], xmm3
mov r8d, 0x10
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x180077b70
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180077bc0
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.180006f30
nop
lea rsi, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rsi, qword [rbp - 0x50]
movzx eax, word [0x18013ab9c]
mov word [rsp + 0x40], ax
cmp byte [0x18013ab9d], 0
je 0x180077c06
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x34
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x40]
mov r8, rdi
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180077c20
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea r15, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova r15, qword [rsp + 0x78]
mov rcx, qword [0x1803f1f90]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4000]
movsxd r8, dword [rbx + 0x100]
mov rax, qword [rbx + 0x108]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, rsi
call fcn.1800186d0
mov r14d, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x404c], eax
jne 0x180077ca0
mov r8, rsi
mov edx, 0xb
mov ecx, eax
call fcn.1800303c0
mov rdx, qword [0x1803f72e8]
add rdx, 0x18
mov ecx, 2
call fcn.1800193b0
mov rdx, qword [0x1803f72e8]
add rdx, 0x20
mov ecx, 0xe
call fcn.1800193b0
lea r9, [rsp + 0x70]
mov r8d, r14d
mov rdx, rsi
mov rcx, r15
call fcn.18000a300
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180077d1d
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180077d18
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180077d18
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x78], xmm10
mov byte [rsp + 0x78], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x180077d66
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180077d61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180077d61
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movsd xmm0, qword [0x18013bb78]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [0x18013bb80]
mov dword [rsp + 0x58], ecx
cmp byte [0x18013bb83], 0
je 0x180077f09
mov r8d, r13d
cmp r12d, 2
jl 0x180077eda
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x18013bb78]
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
jmp 0x180077f09
lea r9, [rsp + 0x50]
nop
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x180077ee0
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x180077f20
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.180006f30
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, [0x1803f213c]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x1803f7358]
call fcn.18000aea0
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x180077fc9
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180077fc4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180077fc4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x40], xmm10
mov byte [rbp - 0x50], 0
mov rax, qword [0x1803f1f90]
mov rcx, qword [rax + 0x4000]
movss xmm0, dword [rcx + 0x30]
movss xmm13, dword [0x18013bc88]
subss xmm0, xmm13
movss dword [rsp + 0x70], xmm0
mov dword [rsp + 0x74], 0x41f00000
movsd xmm1, qword [0x18013b340]
movsd qword [rsp + 0x50], xmm1
mov ecx, dword [0x18013b348]
mov dword [rsp + 0x58], ecx
cmp byte [0x18013b34b], 0
je 0x1800781a9
mov r8d, r13d
cmp r12d, 2
jl 0x180078176
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x18013b340]
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
jmp 0x1800781a9
lea r9, [rsp + 0x50]
nop dword [rax + rax]
mov eax, 0x8d3dcb09
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x180078180
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x1800781c0
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.180006f30
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
call fcn.180011940
movzx ebx, al
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x180078250
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007824b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007824b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x40], xmm10
mov byte [rbp - 0x50], 0
test bl, bl
je 0x180078265
mov byte [0x1803f20f3], 1
mov rax, qword [0x1803f1f90]
mov rcx, qword [rax + 0x4000]
movss xmm0, dword [rcx + 0x30]
subss xmm0, xmm13
movss dword [rsp + 0x70], xmm0
mov dword [rsp + 0x74], 0x41f00000
movsd xmm0, qword [0x18013af50]
movsd qword [rsp + 0x50], xmm0
movzx ecx, word [0x18013af58]
mov word [rsp + 0x58], cx
movzx eax, byte [0x18013af5a]
mov byte [rsp + 0x50], 0x42
xor byte [rsp + 0x51], 0x34
xor byte [rsp + 0x52], 0x35
xor byte [rsp + 0x53], 0x36
xor byte [rsp + 0x54], 0x37
xor byte [rsp + 0x55], 0x38
xor byte [rsp + 0x56], 0x39
xor byte [rsp + 0x57], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x58], cl
xor byte [rsp + 0x59], 0x3c
xor al, 0x3d
mov byte [rsp + 0x5a], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180078300
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea rax, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
call fcn.180011940
movzx ebx, al
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180078394
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007838f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007838f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
test bl, bl
je 0x18007839f
mov byte [0x1803f213a], 1
call fcn.18000abd0
mov qword [rsp + 0x70], 0
movups xmm2, xmmword [str.p__P_]
movups xmmword [rsp + 0x50], xmm2
movzx eax, byte [0x18013b6d8]
mov byte [rsp + 0x60], al
mov r8d, r13d
cmp r12d, 2
jl 0x180078582
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm1, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm3, xmmword [0x18013d150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm3, xmm0
andps xmm3, xmm11
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm3, xmm1
movd dword [rsp + 0x5c], xmm3
mov r8d, 0x10
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop dword [rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x180078590
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800785e0
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.180006f30
nop
lea rsi, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rsi, qword [rbp - 0x50]
movzx eax, word [0x18013ab9c]
mov word [rsp + 0x40], ax
cmp byte [0x18013ab9d], 0
je 0x180078626
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x34
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x40]
mov r8, rdi
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180078640
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea r15, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova r15, qword [rsp + 0x78]
mov rcx, qword [0x1803f1f90]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4000]
movsxd r8, dword [rbx + 0x100]
mov rax, qword [rbx + 0x108]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, rsi
call fcn.1800186d0
mov r14d, eax
mov r8, qword [rbx]
cmp dword [r8 + 0x404c], eax
jne 0x1800786c1
mov r8, rsi
mov edx, 0xb
mov ecx, eax
call fcn.1800303c0
mov rdx, qword [0x1803f72e8]
add rdx, 0x18
mov ecx, 2
call fcn.1800193b0
mov rdx, qword [0x1803f72e8]
add rdx, 0x20
mov ecx, 0xe
call fcn.1800193b0
lea r9, [rsp + 0x70]
mov r8d, r14d
mov rdx, rsi
mov rcx, r15
call fcn.18000a300
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x18007873e
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180078739
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180078739
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x78], xmm10
mov byte [rsp + 0x78], 0
mov rdx, qword [rbp - 0x38]
cmp rdx, 0xf
jbe 0x180078787
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180078782
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180078782
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
mov r14, qword [0x1803f2508]
sub r14, qword [0x1803f2500]
sar r14, 5
lea rax, [rbp - 0x68]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r13
test r14, r14
je 0x18007882b
mov rdx, r14
lea rcx, [rbp - 0x68]
call fcn.1800157f0
lea rax, [rbp - 0x68]
mov qword [rsp + 0x50], rax
mov r15, qword [0x1803f2508]
mov rsi, qword [0x1803f2500]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov rbx, qword [rbp - 0x68]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rbx
lea rax, [rbp - 0x68]
mov qword [rbp - 0x40], rax
cmp rsi, r15
je 0x18007881c
nop word [rax + rax]
mov rdx, rsi
mov rcx, rbx
call fcn.180014650
add rbx, 0x20
mov qword [rbp - 0x48], rbx
add rsi, 0x20
cmp rsi, r15
jne 0x180078800
mov rdx, rbx
mov rcx, rbx
call fcn.180015360
mov qword [rbp - 0x60], rbx
movups xmm2, xmmword [0x18013ba38]
movups xmmword [rsp + 0x50], xmm2
movzx eax, word [0x18013ba48]
mov word [rsp + 0x60], ax
movzx eax, byte [0x18013ba4a]
mov byte [rsp + 0x62], al
mov r8d, r13d
cmp r12d, 2
jl 0x180078a0c
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm1, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm3, xmmword [0x18013d150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm3, xmm0
andps xmm3, xmm11
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm3, xmm1
movd dword [rsp + 0x5c], xmm3
mov r8d, 0x10
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x180078a20
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180078a70
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea rax, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
lea r9, [rbp - 0x68]
lea r8, [0x1803f0994]
lea rdx, [rsp + 0x50]
call fcn.180013a30
movzx ebx, al
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180078b14
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180078b0f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180078b0f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x78], xmm10
mov byte [rsp + 0x78], 0
test bl, bl
je 0x180078b2a
mov byte [0x1803f2138], 1
mov rax, qword [0x1803f1f90]
mov rcx, qword [rax + 0x4000]
movss xmm0, dword [rcx + 0x30]
subss xmm0, xmm13
movss dword [rsp + 0x70], xmm0
mov dword [rsp + 0x74], 0x41f00000
movups xmm2, xmmword [0x18013ac98]
movups xmmword [rsp + 0x50], xmm2
mov edx, dword [0x18013aca8]
mov dword [rsp + 0x60], edx
movzx eax, word [0x18013acac]
mov word [rsp + 0x64], ax
cmp byte [0x18013acad], 0
je 0x180078de3
mov r8d, r13d
cmp r12d, 2
jl 0x180078da4
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm1, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movdqa xmm2, xmm7
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm3, xmmword [0x18013d150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm3, xmm0
andps xmm3, xmm11
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm3, xmm1
movd dword [rsp + 0x5c], xmm3
movdqa xmm2, xmmword [0x18013d160]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x60], xmm2
mov r8d, 0x14
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x16
jl 0x180078db0
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180078e00
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea rax, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
call fcn.180011940
movzx ebx, al
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180078e94
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180078e8f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180078e8f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
movdqu xmmword [rbp - 0x78], xmm10
mov byte [rsp + 0x78], 0
test bl, bl
je 0x180078eaa
mov byte [0x1803f2139], 1
mov rax, qword [0x1803f1f90]
mov rcx, qword [rax + 0x4000]
movss xmm0, dword [rcx + 0x30]
subss xmm0, xmm13
movss dword [rsp + 0x70], xmm0
mov dword [rsp + 0x74], 0x41f00000
movups xmm2, xmmword [str.qUQQRK]
movups xmmword [rsp + 0x50], xmm2
mov edx, dword [0x18013bb70]
mov dword [rsp + 0x60], edx
movzx eax, byte [0x18013bb74]
mov byte [rsp + 0x64], al
mov r8d, r13d
cmp r12d, 2
jl 0x180079114
movdqa xmm1, xmm9
punpckldq xmm1, xmm9
pmuldq xmm1, xmm6
movdqa xmm0, xmm9
punpckhdq xmm0, xmm9
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm9
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm9, xmm0
andps xmm9, xmm11
packuswb xmm9, xmm9
packuswb xmm9, xmm9
movd ecx, xmm14
movd xmm0, ecx
paddb xmm9, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm9, xmm0
movd dword [rsp + 0x50], xmm9
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm6
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm8
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm8, xmm0
andps xmm8, xmm11
packuswb xmm8, xmm8
packuswb xmm8, xmm8
movd xmm0, ecx
paddb xmm8, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm8, xmm1
movd dword [rsp + 0x54], xmm8
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm7, xmm0
andps xmm7, xmm11
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd xmm0, ecx
paddb xmm7, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm7, xmm1
movd dword [rsp + 0x58], xmm7
movdqa xmm2, xmmword [0x18013d150]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
movdqa xmm3, xmmword [0x18013d160]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm3, xmm0
andps xmm3, xmm11
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, edx
xorps xmm3, xmm1
movd dword [rsp + 0x60], xmm3
mov r8d, 0x14
mov eax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3a
movzx eax, r8b
sub al, cl
add al, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x180079120
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea rax, [rsp + 0x50]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180079170
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.180006f30
nop
lea rax, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
call fcn.180011940
movzx ebx, al
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x180079204
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800791ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800791ff
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
test bl, bl
je 0x18007920f
mov byte [0x1803f213b], 1
lea rdx, [0x1803f1070]
cmp qword [0x1803f1088], 0xf
cmova rdx, qword [0x1803f1070]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], r13
inc rdi
cmp byte [rdx + rdi], 0
jne 0x180079236
mov r8, rdi
lea rcx, [rsp + 0x78]
call fcn.180006f30
mov rax, qword [0x1803f72e0]
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rsp + 0x50], xmm0
shufps xmm0, xmm0, 0xff
mov rax, qword [0x1803f1f90]
mulss xmm0, dword [rax + 0x38e8]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.180018d40
mov edx, eax
lea r8, [rsp + 0x78]
call fcn.180008ce0
call fcn.18000abd0
call fcn.180028ba0
mov rcx, qword [rbp - 0x30]
xor rcx, rsp
call fcn.1800fed70
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret