Function at 0x14009ec20
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, [rax - 0x178]
sub rsp, 0x250
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
mov rax, qword [0x140d81080]
xor rax, rsp
mov qword [rbp + 0xc8], rax
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x98], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp + 0x88]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x78], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp + 0x68]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x48], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp - 0x58]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x58], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp + 0x48]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x38], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp + 0x28]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x18], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp + 8]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 8], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp - 0x18]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp - 0x38]
call fcn.1400643b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x68], xmm1
xor r8d, r8d
lea rdx, [0x140d5d71a]
lea rcx, [rbp - 0x78]
call fcn.1400643b0
nop
cmp dword [0x141254cc0], esi
jbe 0x1400a053e
mov rdi, qword [0x141256160]
or dword [rdi + 0x1ce8], 2
mov dword [rdi + 0x1d08], 0x43910000
mov dword [rdi + 0x1d0c], 0x43370000
mov dword [rdi + 0x1cf0], 1
movdqa xmm6, xmmword [0x140d62c10]
mov dword [rbp + 0xa8], 2
movups xmm0, xmmword [rdi + 0x1644]
movups xmmword [rbp + 0xac], xmm0
lea rcx, [rdi + 0x1d70]
lea rdx, [rbp + 0xa8]
call fcn.1400d0ba0
movups xmmword [rdi + 0x1644], xmm6
movdqa xmm6, xmmword [0x140d62ae0]
mov rbx, qword [0x141256160]
mov dword [rbp + 0xa8], 5
movups xmm0, xmmword [rbx + 0x1674]
movups xmmword [rbp + 0xac], xmm0
lea rcx, [rbx + 0x1d70]
lea rdx, [rbp + 0xa8]
call fcn.1400d0ba0
movups xmmword [rbx + 0x1674], xmm6
movss xmm1, dword [0x140d621a0]
mov ecx, 2
call fcn.1400bdab0
mov rcx, qword [0x1412550d0]
call fcn.1400c8d30
movss xmm1, dword [rdi + 0x14]
mulss xmm1, dword [0x140d6202c]
movss xmm0, dword [rdi + 0x10]
mulss xmm0, dword [0x140d62054]
mov rax, qword [0x141256160]
or dword [rax + 0x1ce8], 1
movss dword [rax + 0x1cf8], xmm0
movss dword [rax + 0x1cfc], xmm1
mov dword [rax + 0x1d00], 0x3f000000
mov dword [rax + 0x1d04], 0x3dcccccd
mov dword [rax + 0x1cec], 4
xor edx, edx
mov r8d, reloc.WLDAP32.dll_Ordinal_41
lea rcx, [0x140d5f7c8]
call fcn.1400c64d0
mov rcx, qword [0x1412550b0]
call fcn.1400c8d30
movdqa xmm6, xmmword [0x140d62cd0]
mov rbx, qword [0x141256160]
mov dword [rbp + 0xa8], esi
movups xmm0, xmmword [rbx + 0x1624]
movups xmmword [rbp + 0xac], xmm0
lea rcx, [rbx + 0x1d70]
lea rdx, [rbp + 0xa8]
call fcn.1400d0ba0
movups xmmword [rbx + 0x1624], xmm6
movdqa xmm0, xmmword [0x140d63ea0]
movdqu xmmword [rbp + 0xa8], xmm0
mov word [rbp + 0xb8], 0x98
mov byte [rbp + 0xba], 1
lea rcx, [rbp + 0xa8]
call fcn.140063510
lea r11, [rbp + 0xa8]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [r11 + r8], 0
jne 0x14009ef90
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x88]
call fcn.140064210
lea rcx, [rbp + 0x88]
cmp qword [rbp + 0xa0], 0xf
cmova rcx, qword [rbp + 0x88]
call fcn.1400e5fd0
mov r8, qword [0x141256160]
movsxd rax, dword [r8 + 0x1d70]
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x1d78]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x1624], xmm0
dec dword [r8 + 0x1d70]
call fcn.1400c8dd0
mov dword [rbp + 0xa8], 0xe1f5deb2
mov dword [rbp + 0xac], 0xccb8fff5
mov dword [rbp + 0xb0], 0xbda6fff3
mov word [rbp + 0xb4], 0x100
movdqa xmm8, xmmword [0x140d62440]
movdqa xmm1, xmmword [0x140d64eb0]
movq xmm9, qword [0x140d623f0]
movdqa xmm10, xmm9
paddd xmm10, xmm1
movzx eax, word [rbp + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm0, xmm10
movdqa xmm6, xmmword [0x140d625b0]
andps xmm0, xmm6
packuswb xmm0, xmm0
packuswb xmm0, xmm0
movd eax, xmm0
mov word [rbp + 0xa8], ax
movq xmm11, qword [0x140d62400]
paddd xmm11, xmm1
movzx eax, word [rbp + 0xaa]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm0, xmm11
andps xmm0, xmm6
packuswb xmm0, xmm0
packuswb xmm0, xmm0
movd eax, xmm0
mov word [rbp + 0xaa], ax
movq xmm12, qword [0x140d62410]
paddd xmm12, xmm1
movzx eax, word [rbp + 0xac]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm0, xmm12
andps xmm0, xmm6
packuswb xmm0, xmm0
packuswb xmm0, xmm0
movd eax, xmm0
mov word [rbp + 0xac], ax
movq xmm13, qword [0x140d62420]
paddd xmm13, xmm1
movzx eax, word [rbp + 0xae]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm0, xmm13
andps xmm0, xmm6
packuswb xmm0, xmm0
packuswb xmm0, xmm0
movd eax, xmm0
mov word [rbp + 0xae], ax
mov edi, 8
mov ecx, edi
lea eax, [rcx - 0x6e]
xor byte [rbp + rcx + 0xa8], al
inc rcx
cmp rcx, 0xc
jb 0x14009f150
mov byte [rbp + 0xb5], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009f174
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x68]
call fcn.140064210
movdqa xmm7, xmmword [0x140d64ec0]
mov r8d, dword [0x141254d2c]
test r8d, r8d
je 0x14009f223
lea r10, [rbp + 0xbd]
nop dword [rax]
dec r10
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8d, edx
test edx, edx
jne 0x14009f1b0
lea r9, [rsp + 0x20]
lea r8, [rbp + 0xbd]
mov rdx, r10
lea rcx, [rsp + 0x28]
call fcn.140064840
nop
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
lea rcx, [rbp + 0x68]
call fcn.140064210
nop
lea rcx, [rsp + 0x28]
call fcn.1400641b0
jmp 0x14009f2ca
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
nop dword [rax]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009f240
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009f2b0
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x68]
call fcn.140064210
lea rcx, [rbp + 0x68]
cmp qword [rbp + 0x80], 0xf
cmova rcx, qword [rbp + 0x68]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d64bd0]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0x9fc1cecb
mov word [rbp + 0xbc], 0x86
mov byte [rbp + 0xbe], 1
lea rcx, [rbp + 0xa8]
call fcn.140062b10
lea r11, [rbp + 0xa8]
mov r8, rbx
inc r8
cmp byte [r11 + r8], 0
jne 0x14009f320
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x58]
call fcn.140064210
mov r14d, dword [0x141254d1c]
test r14d, r14d
jle 0x14009f40c
mov eax, 0x91a2b3c5
imul r14d
lea r8d, [r14 + rdx]
sar r8d, 0xb
mov eax, r8d
shr eax, 0x1f
add r8d, eax
imul eax, r8d, 0xe10
mov ecx, r14d
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, r8d, 0x3c
add eax, edx
imul ecx, eax, 0x3c
sub r14d, ecx
lea rcx, [rsp + 0x48]
call fcn.140044ad0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14009f3a7
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.140064210
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
mov r8d, 3
lea rdx, [0x140d5f7e0]
lea rcx, [rbp - 0x58]
call fcn.140064210
mov edx, r14d
lea rcx, [rsp + 0x48]
call fcn.140044ad0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14009f3f0
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.140064210
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
jmp 0x14009f4aa
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009f422
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009f490
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x58]
call fcn.140064210
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0xf
cmova rcx, qword [rbp - 0x58]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d632f0]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0x859ed0cf
mov word [rbp + 0xbc], 0x100
lea rcx, [rbp + 0xa8]
call fcn.140062ff0
lea r11, [rbp + 0xa8]
mov r8, rbx
inc r8
cmp byte [r11 + r8], 0
jne 0x14009f4f6
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x48]
call fcn.140064210
mov edx, dword [0x141254d54]
test edx, edx
je 0x14009f54f
lea rcx, [rsp + 0x48]
call fcn.140044ad0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14009f533
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.140064210
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
jmp 0x14009f5fa
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
nop word [rax + rax]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009f570
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009f5e0
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x48]
call fcn.140064210
lea rcx, [rbp + 0x48]
cmp qword [rbp + 0x60], 0xf
cmova rcx, qword [rbp + 0x48]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d63360]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0xd6d6c6db
mov dword [rbp + 0xbc], 0x100879c
lea rcx, [rbp + 0xa8]
call fcn.140062e50
lea r11, [rbp + 0xa8]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [r11 + r8], 0
jne 0x14009f650
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x28]
call fcn.140064210
mov edx, dword [0x141254d5c]
test edx, edx
je 0x14009f6a9
lea rcx, [rsp + 0x48]
call fcn.140044ad0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14009f68d
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x28]
call fcn.140064210
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
jmp 0x14009f74a
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
nop
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009f6c0
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009f730
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x28]
call fcn.140064210
lea rcx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0xf
cmova rcx, qword [rbp + 0x28]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d63cb0]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0x9bc9cbdd
mov dword [rbp + 0xbc], 0xd1d7d2f6
mov dword [rbp + 0xc0], 0xe3f8a5a5
mov word [rbp + 0xc4], 0x100
lea rcx, [rbp + 0xa8]
call fcn.14009af20
lea r11, [rbp + 0xa8]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [r11 + r8], 0
jne 0x14009f7b0
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 8]
call fcn.140064210
mov edx, dword [0x141254d38]
test edx, edx
je 0x14009f809
lea rcx, [rsp + 0x48]
call fcn.140044ad0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14009f7ed
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 8]
call fcn.140064210
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
jmp 0x14009f8aa
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
nop
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009f820
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009f890
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 8]
call fcn.140064210
lea rcx, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova rcx, qword [rbp + 8]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d64580]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0xcbd1ccd0
mov dword [rbp + 0xbc], 0x889dc2
mov byte [rbp + 0xc0], 1
lea rcx, [rbp + 0xa8]
call fcn.1400625b0
lea r11, [rbp + 0xa8]
mov r8, rbx
nop
inc r8
cmp byte [r11 + r8], 0
jne 0x14009f900
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x18]
call fcn.140064210
mov rcx, qword [0x141256368]
sub rcx, qword [0x141256360]
movabs r13, 0x3159721ed7e75347
mov rax, r13
imul rcx
mov r8, rdx
sar r8, 7
mov rax, r8
shr rax, 0x3f
movabs r12, 0xcccccccccccccccd
add r8, rax
je 0x14009fbda
lea r10, [rbp + 0xbd]
dec r10
mov rax, r12
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8, rdx
test rdx, rdx
jne 0x14009f960
lea r9, [rsp + 0x20]
lea r8, [rbp + 0xbd]
mov rdx, r10
lea rcx, [rsp + 0x28]
call fcn.140064840
nop
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
lea rcx, [rbp - 0x18]
call fcn.140064210
mov dword [rbp + 0xb0], 0x203a73
mov dword [rbp + 0xa8], 0x6c502820
mov dword [rbp + 0xac], 0x72657961
mov byte [rbp + 0xb4], 0
lea rdx, [rbp + 0xa8]
mov rcx, rax
call fcn.140063f80
mov r15, rax
lea r10, [rbp + 0xbd]
mov rcx, qword [0x141256380]
sub rcx, qword [0x141256378]
mov rax, r13
imul rcx
mov r8, rdx
sar r8, 7
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rcx, qword [0x141256368]
sub rcx, qword [0x141256360]
mov rax, r13
imul rcx
mov r9, rdx
sar r9, 7
mov rax, r9
shr rax, 0x3f
add r9, rax
sub r9, r8
nop
dec r10
mov rax, r12
mul r9
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r9b, cl
add r9b, 0x30
mov byte [r10], r9b
mov r9, rdx
test rdx, rdx
jne 0x14009fa50
lea r9, [rsp + 0x20]
lea r8, [rbp + 0xbd]
mov rdx, r10
lea rcx, [rsp + 0x48]
call fcn.140064840
nop
mov dword [rbp + 0xae], 0x203a73
mov dword [rbp + 0xa8], 0x42207c20
mov word [rbp + 0xac], 0x746f
mov byte [rbp + 0xb2], 0
lea rdx, [rbp + 0xa8]
lea rcx, [rsp + 0x48]
call fcn.140063f80
mov r14, rax
lea r10, [rbp + 0xbd]
mov rcx, qword [0x141256380]
sub rcx, qword [0x141256378]
mov rax, r13
imul rcx
mov r8, rdx
sar r8, 7
mov rcx, r8
shr rcx, 0x3f
add r8, rcx
nop dword [rax + rax]
dec r10
mov rax, r12
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8, rdx
test rdx, rdx
jne 0x14009fb00
lea r9, [rsp + 0x20]
lea r8, [rbp + 0xbd]
mov rdx, r10
lea rcx, [rsp + 0x68]
call fcn.140064840
nop
mov dword [rbp + 0xa8], 0x8088
movdqa xmm1, xmmword [0x140d64ed0]
movq xmm0, xmm9
paddd xmm1, xmm0
movzx eax, word [rbp + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xa8], ax
lea rdx, [rbp + 0xa8]
lea rcx, [rsp + 0x68]
call fcn.140063f80
mov rdx, rax
mov rcx, r14
call fcn.14006c090
mov rdx, rax
mov rcx, r15
call fcn.14006c090
nop
lea rcx, [rsp + 0x68]
call fcn.1400641b0
nop
lea rcx, [rsp + 0x48]
call fcn.1400641b0
nop
lea rcx, [rsp + 0x28]
call fcn.1400641b0
jmp 0x14009fc2a
movdqa xmm0, xmmword [0x140d63030]
movdqu xmmword [rbp + 0xa8], xmm0
mov word [rbp + 0xb8], 0x100
lea rcx, [rbp + 0xa8]
call fcn.140063330
lea rcx, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rcx + r8], 0
jne 0x14009fc10
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x18]
call fcn.140064210
lea rcx, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rcx, qword [rbp - 0x18]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d62ff0]
movdqu xmmword [rbp + 0xa8], xmm0
mov dword [rbp + 0xb8], 0xd0cbd1e3
mov dword [rbp + 0xbc], 0x8992c3c8
mov word [rbp + 0xc0], 0x100
lea rcx, [rbp + 0xa8]
call fcn.140063190
lea rcx, [rbp + 0xa8]
mov r8, rbx
inc r8
cmp byte [rcx + r8], 0
jne 0x14009fc80
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x38]
call fcn.140064210
mov rcx, qword [0x141256320]
sub rcx, qword [0x141256318]
movabs rax, 0x6bca1af286bca1b
imul rcx
mov r8, rdx
sar r8, 2
mov rax, r8
shr rax, 0x3f
add r8, rax
je 0x14009fd43
lea r10, [rbp + 0xbd]
nop
dec r10
mov rax, r12
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r10], r8b
mov r8, rdx
test rdx, rdx
jne 0x14009fcd0
lea r9, [rsp + 0x20]
lea r8, [rbp + 0xbd]
mov rdx, r10
lea rcx, [rsp + 0x28]
call fcn.140064840
nop
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
lea rcx, [rbp - 0x38]
call fcn.140064210
nop
lea rcx, [rsp + 0x28]
call fcn.1400641b0
jmp 0x14009fdea
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
mov rcx, rsi
nop dword [rax]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rcx + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rcx + 0xa8], ax
add rcx, 2
cmp rcx, 4
jb 0x14009fd60
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14009fdd0
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x38]
call fcn.140064210
lea rcx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rcx, qword [rbp - 0x38]
call fcn.1400e5fd0
movdqa xmm0, xmmword [0x140d625d0]
movdqu xmmword [rbp + 0xa8], xmm0
mov byte [rbp + 0xb8], 1
movd eax, xmm0
movzx eax, ax
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm10
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xa8], ax
movzx eax, word [rbp + 0xaa]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm11
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xaa], ax
movzx eax, word [rbp + 0xac]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm12
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xac], ax
movzx eax, word [rbp + 0xae]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm13
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xae], ax
mov rcx, rdi
nop
lea eax, [rcx - 0x6e]
xor byte [rbp + rcx + 0xa8], al
inc rcx
cmp rcx, 0xf
jb 0x14009fef0
mov byte [rbp + 0xb8], 0
lea rax, [rbp + 0xa8]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14009ff14
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x78]
call fcn.140064210
mov eax, dword [0x141254d34]
test eax, eax
jns 0x14009ffcb
mov dword [rbp + 0xa8], 0xfdf9f9db
mov word [rbp + 0xac], 0x100
nop
movq xmm0, rsi
punpcklqdq xmm0, xmm0
paddq xmm0, xmm8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm7
paddd xmm1, xmm0
movzx eax, word [rbp + rsi + 0xa8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + rsi + 0xa8], ax
add rsi, 2
cmp rsi, 4
jb 0x14009ff50
mov byte [rbp + 0xad], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14009ffb6
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
jne 0x1400a0106
mov dword [rbp + 0xa8], 0xe6e6fad4
mov dword [rbp + 0xac], 0xf6c2b7e2
mov dword [rbp + 0xb0], 0x100fef4
movzx eax, word [rbp + 0xa8]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm10
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xa8], ax
movzx eax, word [rbp + 0xaa]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm11
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xaa], ax
movzx eax, word [rbp + 0xac]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm12
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xac], ax
movzx eax, word [rbp + 0xae]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm13
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xae], ax
nop word [rax + rax]
lea eax, [rdi - 0x6e]
xor byte [rbp + rdi + 0xa8], al
inc rdi
cmp rdi, 0xa
jb 0x1400a00d0
mov byte [rbp + 0xb3], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a00f1
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
cmp eax, 1
jne 0x1400a014c
mov dword [rbp + 0xb0], 0x656e6f
mov dword [rbp + 0xa8], 0x6f636553
mov dword [rbp + 0xac], 0x5a20646e
mov byte [rbp + 0xb4], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a0137
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
cmp eax, 2
jne 0x1400a0286
mov dword [rbp + 0xa8], 0xe7fdfbc6
mov dword [rbp + 0xac], 0xf6c2b7f2
mov dword [rbp + 0xb0], 0x100fef4
movzx eax, word [rbp + 0xa8]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm10
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xa8], ax
movzx eax, word [rbp + 0xaa]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm11
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xaa], ax
movzx eax, word [rbp + 0xac]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm12
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xac], ax
movzx eax, word [rbp + 0xae]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm13
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xae], ax
nop dword [rax + rax]
lea eax, [rdi - 0x6e]
xor byte [rbp + rdi + 0xa8], al
inc rdi
cmp rdi, 0xa
jb 0x1400a0250
mov byte [rbp + 0xb3], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a0271
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
cmp eax, 3
jne 0x1400a02cc
mov dword [rbp + 0xb0], 0x656e6f
mov dword [rbp + 0xa8], 0x72756f46
mov dword [rbp + 0xac], 0x5a206874
mov byte [rbp + 0xb4], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a02b7
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
cmp eax, 4
jne 0x1400a0403
mov dword [rbp + 0xa8], 0xe1f2fad4
mov dword [rbp + 0xac], 0xf6c2b7fe
mov dword [rbp + 0xb0], 0x100fef4
movzx eax, word [rbp + 0xa8]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm10
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xa8], ax
movzx eax, word [rbp + 0xaa]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm11
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xaa], ax
movzx eax, word [rbp + 0xac]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm12
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xac], ax
movzx eax, word [rbp + 0xae]
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movq xmm0, xmm13
xorps xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm1
mov word [rbp + 0xae], ax
nop dword [rax + rax]
lea eax, [rdi - 0x6e]
xor byte [rbp + rdi + 0xa8], al
inc rdi
cmp rdi, 0xa
jb 0x1400a03d0
mov byte [rbp + 0xb3], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a03f1
lea rdx, [rbp + 0xa8]
jmp 0x1400a0440
jle 0x1400a044c
mov dword [rbp + 0xae], 0x656e6f
mov dword [rbp + 0xa8], 0x7473614c
mov word [rbp + 0xac], 0x5a20
mov byte [rbp + 0xb2], 0
lea rax, [rbp + 0xa8]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400a0430
lea rdx, [rbp + 0xa8]
mov r8, rbx
lea rcx, [rbp - 0x78]
call fcn.140064210
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova rcx, qword [rbp - 0x78]
call fcn.1400e5fd0
call fcn.1400c8840
call fcn.1400c8dd0
mov r8, qword [0x141256160]
movsxd rax, dword [r8 + 0x1d70]
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x1d78]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x1624], xmm0
movsxd rcx, dword [r8 + 0x1d70]
lea eax, [rcx - 1]
mov dword [r8 + 0x1d70], eax
lea rax, [rcx - 2]
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x1d78]
movsxd rax, dword [rcx + rdx*4]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 + 4]
movups xmmword [r8 + rax*8 + 0x1624], xmm0
dec dword [r8 + 0x1d70]
movsxd rax, dword [r8 + 0x1d80]
lea rcx, [rax + rax*2]
mov rdx, qword [r8 + 0x1d88]
movsxd rax, dword [rdx + rcx*4 - 0xc]
lea r10, [rax + rax*2]
lea rax, [0x140236c40]
mov r9d, dword [rax + r10*4 + 8]
cmp dword [rax + r10*4], 8
jne 0x1400a0537
mov eax, dword [rax + r10*4 + 4]
cmp eax, 1
jne 0x1400a051a
mov eax, dword [rdx + rcx*4 - 8]
mov dword [r9 + r8 + 0x1560], eax
jmp 0x1400a0537
cmp eax, 2
jne 0x1400a0537
mov eax, dword [rdx + rcx*4 - 8]
mov dword [r9 + r8 + 0x1560], eax
mov eax, dword [rdx + rcx*4 - 4]
mov dword [r9 + r8 + 0x1564], eax
dec dword [r8 + 0x1d80]
lea rcx, [rbp - 0x78]
call fcn.1400641b0
nop
lea rcx, [rbp - 0x38]
call fcn.1400641b0
nop
lea rcx, [rbp - 0x18]
call fcn.1400641b0
nop
lea rcx, [rbp + 8]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x28]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x48]
call fcn.1400641b0
nop
lea rcx, [rbp - 0x58]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x68]
call fcn.1400641b0
nop
lea rcx, [rbp + 0x88]
call fcn.1400641b0
mov rcx, qword [rbp + 0xc8]
xor rcx, rsp
call fcn.14017e360
lea r11, [rsp + 0x250]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret