Function at 0x1401ab130
Capabilities:
Encode data using xor
Encrypt data using chaskey

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 0x18], r8
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x47]
sub rsp, 0xc0
mov rdi, qword [rbp + 0x6f]
mov r13, r9
mov rbx, qword [rbp + 0x77]
mov r15, rdx
mov r14, rcx
xor esi, esi
mov r12, r9
movzx ecx, byte [rdi + 0x42]
movzx eax, byte [rdi + 0x6d]
movzx edx, byte [rdi + 0x43]
shl ecx, 8
or ecx, eax
shl edx, 0xf
xor ecx, 0x3ac7
add edx, 0xffe1823c
add ecx, esi
add edx, esi
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
mov rcx, r13
call fcn.1401a10c0
movzx ecx, byte [rdi + 0x11]
lea r8d, [rsi + 0x664]
movzx edx, byte [rdi + 0x56]
add ecx, esi
add edx, 0x5c8
add edx, ecx
mov ecx, dword [r12]
mov dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x11]
movzx edx, byte [rdi + 0x56]
add ecx, esi
add edx, 0x5c8
add edx, ecx
xor dword [rbx + rdx*4], eax
movzx eax, byte [rdi + 0x64]
movzx ecx, byte [rdi + 0xc]
add eax, esi
add ecx, 0x71
add ecx, eax
movzx eax, byte [rdi + 0x3b]
shl eax, 4
add eax, 0x28c
add eax, esi
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x4b]
lea ecx, [rax*8 + 0x3a4]
add ecx, esi
lea eax, [r8 - 0x474]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0xa]
add eax, 0x8d
lea ecx, [rsi + rax*2]
mov eax, r8d
mov r8d, dword [rbx + rcx*4]
movzx ecx, byte [rdi + 0x4b]
add ecx, 0x44
xor r8d, dword [rbx + rax*4]
add ecx, esi
mov dword [rbx + rcx*4], r8d
movzx eax, byte [rdi + 0x19]
movzx ecx, byte [rdi + 0x4d]
movzx edx, byte [rdi + 0x58]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 6]
or ecx, eax
xor edx, 0x23a6
xor ecx, 0x6fd3
add edx, esi
add ecx, esi
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x3c]
lea ecx, [rax*8 + 0x41c]
movzx eax, byte [rdi + 0x7c]
shl eax, 7
add ecx, esi
add eax, 0xffffe09c
add eax, esi
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx edx, byte [rdi + 0x2a]
movzx eax, byte [rdi + 0x22]
shl edx, 8
movzx ecx, byte [rdi + 0x6d]
lea r12, [r12 + 4]
or edx, eax
add ecx, 0xed
movzx eax, byte [rdi + 0x27]
xor edx, 0x1225
add edx, esi
add eax, esi
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x33]
movzx eax, byte [rdi + 0x16]
movzx edx, byte [rdi + 0x71]
shl ecx, 8
or ecx, eax
shl edx, 5
xor ecx, 0xf419
add edx, 0xfffff354
add ecx, esi
add edx, esi
inc esi
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp esi, 0x20
jb 0x1401ab16d
xor r13d, r13d
mov qword [rbp - 0x51], rdi
lea rcx, [rbp - 0x51]
mov dword [rbp - 0x49], r13d
call fcn.14019c7b8
mov qword [rbp - 0x21], rax
lea rcx, [rbp - 0x21]
mov dword [rbp - 0x19], r13d
lea rax, [rbx + 0x1610]
movaps xmm0, xmmword [rbp - 0x21]
movdqa xmmword [rbp - 1], xmm0
mov qword [rbp - 0x21], rax
mov dword [rbp - 0x19], r13d
call fcn.14019c7b8
mov qword [rbp - 0x31], rax
lea rcx, [rbp - 0x31]
mov dword [rbp - 0x29], r13d
lea rax, [rbx + 0x1990]
movaps xmm0, xmmword [rbp - 0x31]
movdqa xmmword [rbp + 0xf], xmm0
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], r13d
call fcn.14019c7b8
mov qword [rbp - 0x41], rax
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
lea rax, [rbx + 0x1020]
movaps xmm0, xmmword [rbp - 0x41]
movdqa xmmword [rbp - 0x11], xmm0
mov qword [rbp - 0x41], rax
mov dword [rbp - 0x39], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 1]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 0x11]
mov dword [rsp + 0x28], 0x20
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r10d, r13d
movzx eax, byte [rdi + 0x68]
lea r9d, [r10 + 0x408]
add eax, 0x1d
lea ecx, [r10 + rax*4]
lea eax, [r9 + 0x2a8]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x6b]
movzx ecx, byte [rdi + 0x33]
add eax, 0xffffffae
add ecx, 0xd4
lea edx, [r10 + rax*8]
movzx eax, byte [rdi + 0x6f]
add eax, r10d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x64]
movzx ecx, byte [rdi + 0x7a]
shl eax, 0xd
add ecx, 0xffffff2d
add eax, 0xffe66264
add eax, r10d
mov edx, dword [rbx + rax*4]
movzx eax, byte [rdi + 0x7c]
xor edx, dword [rbx + r9*4]
add eax, r10d
add ecx, eax
mov dword [rbx + rcx*4], edx
movzx eax, byte [rdi + 0x42]
movzx ecx, byte [rdi + 0x38]
add eax, r10d
add ecx, 0xfffffee4
add ecx, eax
lea eax, [r9 - 0x32c]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x20]
movzx ecx, byte [rdi + 0x7a]
add eax, r10d
add ecx, 0x27
add ecx, eax
movzx eax, byte [rdi + 1]
shl eax, 0xb
add eax, 0xfffbc804
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x1c]
movzx eax, byte [rdi + 0x18]
add ecx, 0x2b9
movzx edx, byte [rdi + 0x3e]
add eax, r10d
add edx, r10d
add edx, ecx
movzx ecx, byte [rdi + 0x3f]
add ecx, 0x1db
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx r8d, byte [rdi + 0x43]
movzx eax, byte [rdi + 0x2a]
movzx ecx, byte [rdi + 0x12]
add eax, r10d
add ecx, 0x617
shl r8d, 0xa
add ecx, eax
add r8d, 0xffff1008
add r8d, r10d
mov eax, dword [rbx + r8*4]
mov dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x78]
movzx ecx, byte [rdi + 0x3b]
add eax, r10d
add ecx, 0x6d7
add ecx, eax
movzx eax, byte [rdi + 6]
shl eax, 0xb
add eax, 0xfffd5010
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
lea ecx, [r9 - 0x3b8]
movzx eax, byte [rdi + 0x47]
shl eax, 6
add eax, 0xffffc744
add eax, r10d
mov eax, dword [rbx + rax*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 4]
movzx edx, byte [rdi + 0x4e]
add ecx, 0x468
movzx eax, byte [rdi + 0x66]
add edx, r10d
add edx, ecx
add eax, r10d
movzx ecx, byte [rdi + 0x54]
add ecx, 9
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 0x19]
add ecx, 0xffffff8f
add eax, r10d
add ecx, eax
movzx eax, byte [rdi + 0x29]
shl eax, 7
add eax, 0xffffe9f8
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x29]
movzx eax, byte [rdi + 0x31]
movzx edx, byte [rdi + 0xe]
shl ecx, 8
or ecx, eax
shl edx, 5
xor ecx, 0x3d7b
add edx, 0xffffe958
add ecx, r10d
add edx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x30]
movzx edx, byte [rdi + 0x4d]
movzx eax, byte [rdi + 1]
shl ecx, 0xe
shl edx, 8
add ecx, 0xffc244a0
or edx, eax
add ecx, r10d
xor edx, 0x6e8f
add edx, r10d
mov eax, dword [rbx + rdx*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x4b]
movzx edx, byte [rdi + 0x39]
add ecx, 0xffffffb9
movzx eax, byte [rdi + 0x6a]
add edx, r10d
add edx, ecx
add eax, r10d
movzx ecx, byte [rdi + 0x17]
add ecx, 0x47b
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x56]
movzx edx, byte [rdi + 0x4f]
add ecx, 0xffffffea
movzx eax, byte [rdi + 0x2e]
shl edx, 7
add eax, r10d
add ecx, eax
add edx, 0xffffc4a0
add edx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
lea edx, [r9 - 0x36c]
movzx eax, byte [rdi + 1]
movzx ecx, byte [rdi + 0x72]
add ecx, 0x392
add eax, r10d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x76]
movzx eax, byte [rdi + 0x2a]
add ecx, 0x46b
add eax, r10d
add ecx, eax
movzx eax, byte [rdi + 0x6b]
shl eax, 9
add eax, 0xfffe5a9c
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x4f]
movzx eax, byte [rdi + 0x30]
add ecx, 0x4b2
movzx edx, byte [rdi + 0x2c]
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x5d]
xor edx, 0xb76b
add eax, r10d
add ecx, eax
add edx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x60]
movzx eax, byte [rdi + 0x7c]
add ecx, 0x766
movzx edx, byte [rdi + 0x29]
add eax, r10d
add ecx, eax
shl edx, 8
add edx, 0xffffca08
add edx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x66]
movzx ecx, byte [rdi + 0x56]
shl ecx, 8
or ecx, eax
lea eax, [r9 + 0x4e8]
mov eax, dword [rbx + rax*4]
xor ecx, 0x4ba2
add ecx, r10d
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x6e]
movzx ecx, byte [rdi + 0x3d]
movzx edx, byte [rdi + 0x48]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [rdi + 0x4c]
xor edx, 0x66fd
or ecx, eax
add edx, r10d
xor ecx, 0x35e3
add ecx, r10d
inc r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp r10d, 0x20
jb 0x1401ab3b5
movzx edx, byte [rdi + 0x35]
mov r9, r15
movzx eax, byte [rdi + 0x4f]
movzx ecx, byte [rdi + 0x52]
mov rsi, qword [rbp + 0x7f]
shl edx, 8
or edx, eax
shl ecx, 0xd
xor edx, 0x66d7
mov qword [rsp + 0x28], rsi
sub ecx, 0x7e000
mov qword [rsp + 0x20], rbx
call fcn.1401a6b98
mov r9d, r13d
movzx eax, byte [rdi + 0x23]
lea edx, [r9 + 0x450]
movzx r8d, byte [rdi + 0x71]
movzx ecx, byte [rdi + 0x4c]
add ecx, 0x5e1
shl r8d, 8
or r8d, eax
movzx eax, byte [rdi + 0x5c]
add eax, r9d
xor r8d, 0x8bc6
add ecx, eax
add r8d, r9d
mov eax, dword [rbx + r8*4]
mov dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x2e]
movzx ecx, byte [rdi + 0x2c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x36]
xor ecx, 0xb1d5
shl eax, 8
add ecx, r9d
add eax, 0xffff9c50
add eax, r9d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x35]
movzx eax, byte [rdi + 9]
add ecx, 0x625
add eax, r9d
inc r9d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp r9d, 0x20
jb 0x1401ab736
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x31]
lea rax, [rbx + 0x1860]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
lea rax, [rbx + 0x1140]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov qword [rbp - 0x21], rax
mov dword [rbp - 0x19], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r12, [rbx + 0xf90]
mov dword [rbp - 0x59], r13d
lea rcx, [rbp - 0x51]
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov dword [rbp - 0x49], r13d
mov qword [rbp - 0x51], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov dword [rsp + 0x28], 0x20
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r8d, r13d
lea r9, [rbx + 0xe70]
movzx ecx, byte [rdi + 0x3e]
movzx eax, byte [rdi + 1]
shl ecx, 8
or ecx, eax
mov eax, dword [r9 + 0x120]
xor ecx, 0xf73f
add ecx, r8d
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x1f]
movzx eax, byte [rdi + 0xb]
add ecx, 0x8fa
add eax, r8d
add ecx, eax
mov eax, dword [r9]
lea r9, [r9 + 4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x44]
movzx ecx, byte [rdi + 0x7a]
movzx edx, byte [rdi + 0x59]
add ecx, 0x8c8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x75]
add eax, r8d
xor edx, 0x695d
add edx, r8d
add ecx, eax
inc r8d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp r8d, 0x20
jb 0x1401ab88e
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x31]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov dword [rbp - 0x29], r13d
mov qword [rbp - 0x31], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov dword [rbp - 0x19], r13d
mov qword [rbp - 0x21], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x51]
lea rax, [rbx + 0xc0]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov qword [rbp - 0x51], rax
mov dword [rbp - 0x49], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov dword [rsp + 0x28], 0x20
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r10d, r13d
movzx ecx, byte [rdi + 0x59]
lea r9d, [r10 + 0x39c]
movzx edx, byte [rdi + 0x5c]
lea r8d, [r9 + 0x3dc]
movzx eax, byte [rdi + 0x35]
shl ecx, 8
or ecx, eax
shl edx, 0xe
add edx, 0xfff20030
xor ecx, 0x6cf5
add edx, r10d
add ecx, r10d
mov eax, dword [rbx + rdx*4]
mov dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x36]
movzx edx, byte [rdi + 0x1d]
shl edx, 6
add edx, 0xffffed50
shl eax, 8
add edx, r10d
add eax, 0xffff9f28
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rdx*4], eax
movzx ecx, byte [rdi + 0x2f]
movzx edx, byte [rdi + 0x37]
add ecx, 0xfffffe5e
add edx, r10d
add edx, ecx
lea ecx, [r8 - 0x728]
mov eax, dword [rbx + rdx*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x37]
movzx eax, byte [rdi + 0x6d]
movzx edx, byte [rdi + 0x2d]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x11]
or ecx, eax
xor edx, 0x4393
xor ecx, 0xe933
add edx, r10d
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x2c]
movzx eax, byte [rdi + 0x72]
movzx edx, byte [rdi + 0xa]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x21]
or ecx, eax
xor edx, 0x6bfb
xor ecx, 0xb730
add edx, r10d
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x5a]
movzx edx, byte [rdi + 0x5c]
add ecx, 0xffffff83
movzx eax, byte [rdi + 0x22]
add edx, r10d
add edx, ecx
add eax, r10d
movzx ecx, byte [rdi + 0x41]
add ecx, 0x766
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x4a]
movzx ecx, byte [rdi + 0x2b]
add eax, r10d
add ecx, 0x75f
add ecx, eax
movzx eax, byte [rdi + 0x1e]
shl eax, 0x10
add eax, 0xfffb0050
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x31]
movzx edx, byte [rdi + 0x3f]
add eax, 0x411
shl edx, 0xe
add edx, 0xfff60050
add edx, r10d
lea ecx, [r10 + rax*2]
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x19]
add eax, 0x234
lea edx, [r10 + rax*4]
movzx eax, byte [rdi + 0x3e]
add eax, 0xd0
lea ecx, [r10 + rax*2]
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x44]
movzx ecx, byte [rdi + 0x34]
movzx edx, byte [rdi + 0x13]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x7a]
or ecx, eax
xor edx, 0x885d
xor ecx, 0xa4ef
add edx, r10d
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 4]
add eax, 0x17c
lea ecx, [r10 + rax*2]
mov eax, r8d
mov r8d, dword [rbx + rcx*4]
movzx ecx, byte [rdi + 0x67]
shl ecx, 8
xor r8d, dword [rbx + rax*4]
movzx eax, byte [rdi + 0x1e]
or ecx, eax
xor ecx, 0x139
add ecx, r10d
mov dword [rbx + rcx*4], r8d
movzx eax, byte [rdi + 0x59]
shl eax, 7
add eax, 0xffffd278
add eax, r10d
inc r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + r9*4], eax
cmp r10d, 0x20
jb 0x1401ab9ba
movzx ecx, byte [rdi + 0x53]
mov r9, r15
movzx edx, byte [rdi + 0x4a]
add ecx, 0x206
add edx, ecx
mov qword [rsp + 0x28], rsi
movzx ecx, byte [rdi + 0x2d]
shl ecx, 4
sub ecx, 0xd9
mov qword [rsp + 0x20], rbx
call fcn.1401a6b98
mov r9d, r13d
movzx eax, byte [rdi + 0xf]
movzx ecx, byte [rdi + 0x14]
add eax, 0xffffffc0
add ecx, 0x3bc
lea edx, [r9 + rax*4]
movzx eax, byte [rdi + 0x6b]
add eax, r9d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x3d]
movzx r8d, byte [rdi + 0x6a]
movzx ecx, byte [rdi]
add ecx, 0x652
shl r8d, 8
or r8d, eax
movzx eax, byte [rdi + 0x79]
add eax, r9d
xor r8d, 0x54b2
add ecx, eax
add r8d, r9d
mov eax, dword [rbx + r8*4]
mov dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x3e]
movzx r8d, byte [rdi + 0x2d]
add eax, r9d
movzx ecx, byte [rdi + 0xf]
add r8d, r9d
add ecx, 0x25e
add r8d, ecx
movzx ecx, byte [rdi + 2]
add ecx, 0x5ec
add ecx, eax
mov eax, dword [rbx + r8*4]
mov dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0xb]
movzx ecx, byte [rdi + 0x4d]
movzx edx, byte [rdi + 0xd]
shl ecx, 8
or ecx, eax
shl edx, 4
xor ecx, 0x620c
add edx, 0xffffff58
add ecx, r9d
add edx, r9d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x31]
movzx ecx, byte [rdi + 0x77]
add eax, r9d
add ecx, 0x731
add ecx, eax
movzx eax, byte [rdi + 3]
shl eax, 8
add eax, 0xffffc408
add eax, r9d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
lea eax, [r9 + 0x7a4]
mov edx, eax
add eax, 0xffffff64
mov eax, dword [rbx + rax*4]
xor dword [rbx + rdx*4], eax
movzx eax, byte [rdi + 0x19]
movzx ecx, byte [rdi + 0xc]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0xf]
shl eax, 0xc
xor ecx, 0xba2a
add eax, 0xfff999b8
add ecx, r9d
add eax, r9d
inc r9d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
cmp r9d, 0x20
jb 0x1401abbea
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x31]
lea rax, [rbx + 0x2040]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
lea rax, [rbx + 0x1910]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov qword [rbp - 0x21], rax
mov dword [rbp - 0x19], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x51]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov dword [rbp - 0x49], r13d
mov qword [rbp - 0x51], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov r12d, 0x20
movdqa xmmword [rbp - 0x61], xmm0
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x61]
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r9d, r13d
movzx ecx, byte [rdi + 0x3f]
lea r8d, [r9 + 0x130]
movzx edx, byte [rdi + 7]
add ecx, 0x2e4
add edx, r9d
add edx, ecx
movzx ecx, byte [rdi + 0x37]
shl ecx, 0xa
add ecx, 0xfffc5d30
add ecx, r9d
mov eax, dword [rbx + rdx*4]
mov dword [rbx + rcx*4], eax
lea eax, [r8 + 0x724]
mov eax, dword [rbx + rax*4]
movzx edx, byte [rdi + 1]
shl edx, 0xe
add edx, 0xffde43e4
add edx, r9d
xor dword [rbx + rdx*4], eax
movzx ecx, byte [rdi + 9]
movzx edx, byte [rdi + 0x65]
add ecx, 0x7db
movzx eax, byte [rdi + 0x12]
add edx, r9d
add edx, ecx
add eax, r9d
movzx ecx, byte [rdi + 0x1f]
add ecx, 0x281
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x66]
movzx eax, byte [rdi + 3]
shl ecx, 8
or ecx, eax
xor ecx, 0x7ff7
add ecx, r9d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + r8*4], ecx
movzx ecx, byte [rdi + 0x2c]
movzx edx, byte [rdi + 0x58]
add ecx, 0xee
movzx eax, byte [rdi + 0x60]
add edx, r9d
add edx, ecx
add eax, r9d
movzx ecx, byte [rdi + 0x59]
add ecx, 0x5c
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x2c]
movzx eax, byte [rdi + 0x61]
movzx edx, byte [rdi + 0x1a]
shl ecx, 8
or ecx, eax
shl edx, 0xc
xor ecx, 0xb651
add edx, 0xfffcd130
add ecx, r9d
add edx, r9d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx edx, byte [rdi + 0x7c]
movzx eax, byte [rdi + 0x32]
add edx, r9d
movzx ecx, byte [rdi + 0x7d]
add ecx, 0x128
add edx, ecx
movzx ecx, byte [rdi + 0x5d]
shl ecx, 8
or ecx, eax
xor ecx, 0x5add
mov eax, dword [rbx + rdx*4]
add ecx, r9d
mov dword [rbx + rcx*4], eax
movzx edx, byte [rdi + 0x56]
movzx eax, byte [rdi + 0x78]
shl edx, 8
or edx, eax
xor edx, 0x4ce6
movzx eax, byte [rdi + 7]
add edx, r9d
add eax, 0x178
lea ecx, [r9 + rax*2]
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
lea edx, [r8 + 0x370]
movzx ecx, byte [rdi + 0x21]
movzx eax, byte [rdi + 0x68]
shl ecx, 8
or ecx, eax
xor ecx, 0x1b4
add ecx, r9d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x1a]
movzx eax, byte [rdi + 0x55]
shl ecx, 8
add eax, 0x8a
lea edx, [r9 + rax*8]
movzx eax, byte [rdi + 0x4a]
or ecx, eax
xor ecx, 0x3610
add ecx, r9d
inc r9d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp r9d, r12d
jb 0x1401abdd1
movzx eax, byte [rdi + 0x70]
mov r9, r15
movzx edx, byte [rdi + 6]
movzx ecx, byte [rdi + 0x30]
shl edx, 8
or edx, eax
mov qword [rsp + 0x28], rsi
movzx eax, byte [rdi + 2]
xor edx, 0x547b
add eax, 0x4f8
mov qword [rsp + 0x20], rbx
add ecx, eax
call fcn.1401a6b98
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x31]
lea rax, [rbx + 0x2460]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
lea rax, [rbx + 0x20d0]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov qword [rbp - 0x21], rax
mov dword [rbp - 0x19], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x51]
lea rax, [rbx + 0x570]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov qword [rbp - 0x51], rax
mov dword [rbp - 0x49], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r11d, r13d
movzx eax, byte [rdi + 0x55]
lea r10d, [r11 + 0x15c]
movzx ecx, byte [rdi + 1]
lea r8d, [r10 + 0x160]
add ecx, 0x320
add eax, r11d
add ecx, eax
lea eax, [r8 + 0x65c]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x2f]
movzx ecx, byte [rdi + 3]
shl ecx, 8
or ecx, eax
mov eax, dword [rbx + r10*4]
xor ecx, 0x398d
add ecx, r11d
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x4c]
movzx edx, byte [rdi + 0x28]
add ecx, 0x103
add edx, r11d
add edx, ecx
mov ecx, dword [rbx + r8*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0xa]
movzx ecx, byte [rdi + 0x1a]
add eax, r11d
add ecx, 0x732
add ecx, eax
mov eax, dword [rbx + r10*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x57]
movzx eax, byte [rdi + 0x2d]
add ecx, 0x669
movzx edx, byte [rdi + 0x38]
add eax, r11d
add edx, r11d
add edx, ecx
movzx ecx, byte [rdi + 0x46]
add ecx, 0xc4
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x28]
movzx ecx, byte [rdi + 0x5c]
shl ecx, 8
or ecx, eax
lea eax, [r10 + 0x20]
mov eax, dword [rbx + rax*4]
xor ecx, 0x3f86
add ecx, r11d
inc r11d
xor dword [rbx + rcx*4], eax
cmp r11d, r12d
jb 0x1401ac062
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rdx, [rbx + 0x1f40]
mov dword [rbp - 0x59], r13d
lea rcx, [rbp - 0x31]
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov dword [rbp - 0x29], r13d
mov qword [rbp - 0x31], rdx
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov dword [rbp - 0x19], r13d
mov qword [rbp - 0x21], rdx
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r12, [rbx + 0xcb0]
mov dword [rbp - 0x59], r13d
lea rcx, [rbp - 0x51]
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov dword [rbp - 0x49], r13d
mov qword [rbp - 0x51], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov dword [rsp + 0x28], 0x20
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r9d, r13d
movzx ecx, byte [rdi + 0x50]
lea r8d, [r9 + 0x55c]
shl ecx, 9
lea eax, [r8 - 0x230]
mov eax, dword [rbx + rax*4]
add ecx, 0x1a4
add ecx, r9d
mov dword [rbx + rcx*4], eax
movzx edx, byte [rdi + 0x60]
movzx ecx, byte [rdi + 0x41]
add edx, r9d
add ecx, 0x155
inc r9d
add edx, ecx
mov ecx, dword [rbx + r8*4]
xor dword [rbx + rdx*4], ecx
cmp r9d, 0x20
jb 0x1401ac1f7
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x31]
lea rax, [rbx + 0x11d0]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov qword [rbp - 0x31], rax
mov dword [rbp - 0x29], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov dword [rbp - 0x19], r13d
mov qword [rbp - 0x21], r12
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x51]
lea rax, [rbx + 0x1570]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov qword [rbp - 0x51], rax
mov dword [rbp - 0x49], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov r12d, 0x20
movdqa xmmword [rbp - 0x61], xmm0
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x61]
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov r9, r15
mov qword [rsp + 0x28], rsi
mov edx, 0x2df
mov qword [rsp + 0x20], rbx
mov ecx, 0xa2a
call fcn.1401a6b98
mov r10d, r13d
movzx ecx, byte [rdi + 0x1f]
lea r9d, [r10 + 0x6b0]
movzx eax, byte [rdi + 0x72]
lea r8d, [r9 - 0x4e8]
add ecx, 0x393
add eax, r10d
add ecx, eax
lea eax, [r9 - 0x614]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x75]
add eax, 0x7d
lea ecx, [r10 + rax*8]
mov eax, dword [rbx + r8*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x59]
movzx eax, byte [rdi + 0x12]
movzx edx, byte [rdi + 0x67]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x78]
or ecx, eax
xor edx, 0x915
xor ecx, 0x6e8e
add edx, r10d
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x67]
movzx edx, byte [rdi + 0x66]
add eax, 0x31
add edx, 0x422
add edx, r10d
lea ecx, [r10 + rax*8]
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x3a]
movzx ecx, byte [rdi + 0x55]
shl ecx, 8
or ecx, eax
xor ecx, 0x810c
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + r9*4], ecx
movzx eax, byte [rdi + 7]
movzx ecx, byte [rdi + 0x61]
movzx edx, byte [rdi + 0x3e]
add ecx, 0x617
shl edx, 8
add ecx, r10d
or edx, eax
xor edx, 0xfa88
add edx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x51]
movzx ecx, byte [rdi + 7]
add eax, r10d
add ecx, 0x596
add ecx, eax
lea eax, [r9 - 0x260]
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x3d]
shl eax, 0xb
add eax, 0xfffe54a0
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + r8*4], eax
movzx eax, byte [rdi + 4]
movzx edx, byte [rdi + 0x2b]
movzx ecx, byte [rdi + 0x24]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [rdi + 0x1b]
xor edx, 0x3df2
add edx, r10d
or ecx, eax
xor ecx, 0xc5de
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx eax, byte [rdi + 0x3f]
movzx ecx, byte [rdi + 0x3d]
add eax, r10d
movzx edx, byte [rdi + 0x2d]
add ecx, 0x3e
add ecx, eax
shl edx, 0xd
movzx eax, byte [rdi + 0x46]
add edx, 0xfff7a4a0
add eax, r10d
add edx, r10d
mov r8d, dword [rbx + rdx*4]
xor r8d, dword [rbx + rcx*4]
movzx ecx, byte [rdi + 4]
add ecx, 0x78d
add ecx, eax
mov dword [rbx + rcx*4], r8d
movzx eax, byte [rdi + 0x7f]
movzx ecx, byte [rdi + 0x4b]
shl ecx, 8
or ecx, eax
lea eax, [r9 - 0x474]
mov eax, dword [rbx + rax*4]
xor ecx, 0x5083
add ecx, r10d
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x18]
movzx edx, byte [rdi + 0x7c]
shl eax, 0xc
add eax, 0xfff9f4c8
shl edx, 0xf
add eax, r10d
add edx, 0xffe00778
add edx, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rdx*4], eax
lea edx, [r9 - 0x1e8]
movzx ecx, byte [rdi + 0x43]
movzx eax, byte [rdi + 0x15]
add ecx, 0x234
add eax, r10d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
mov r8d, dword [rbx + rdx*4]
movzx eax, byte [rdi + 0x3d]
movzx ecx, byte [rdi + 0x31]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x24]
xor ecx, 0x2862
add eax, r10d
add ecx, r10d
mov edx, dword [rbx + rcx*4]
movzx ecx, byte [rdi + 2]
xor edx, r8d
add ecx, 0x405
add ecx, eax
mov dword [rbx + rcx*4], edx
movzx eax, byte [rdi + 0x42]
movzx ecx, byte [rdi + 0x1f]
add eax, r10d
add ecx, 0x4c2
add ecx, eax
movzx eax, byte [rdi]
shl eax, 9
add eax, 0xffffb698
add eax, r10d
mov eax, dword [rbx + rax*4]
xor dword [rbx + rcx*4], eax
movzx eax, byte [rdi + 0x3d]
movzx edx, byte [rdi + 0x60]
movzx ecx, byte [rdi + 0x6a]
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x13]
xor edx, 0x62ae
add edx, r10d
add ecx, 0x4a8
add eax, r10d
add ecx, eax
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 8]
movzx eax, byte [rdi + 0x28]
add ecx, 0x800
movzx edx, byte [rdi + 0x1b]
add eax, 0x39
add edx, r10d
add edx, ecx
lea ecx, [r10 + rax*4]
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x72]
movzx eax, byte [rdi + 0x5a]
movzx edx, byte [rdi + 0x61]
shl ecx, 8
or ecx, eax
shl edx, 6
xor ecx, 0x80ed
add edx, 0xffffe214
add ecx, r10d
add edx, r10d
mov eax, dword [rbx + rdx*4]
mov dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x42]
movzx eax, byte [rdi + 0x31]
shl ecx, 8
or ecx, eax
lea eax, [r9 - 0x35c]
xor ecx, 0x38e3
mov eax, dword [rbx + rax*4]
add ecx, r10d
xor dword [rbx + rcx*4], eax
movzx ecx, byte [rdi + 0x28]
movzx eax, byte [rdi + 0x14]
movzx edx, byte [rdi + 0x4f]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [rdi + 0x31]
or ecx, eax
xor edx, 0x878d
xor ecx, 0x52e3
add edx, r10d
add ecx, r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
movzx ecx, byte [rdi + 0x2c]
movzx eax, byte [rdi + 0x39]
movzx edx, byte [rdi + 0x3b]
shl ecx, 8
or ecx, eax
shl edx, 0xc
xor ecx, 0xb0f3
add edx, 0xffffd4c8
add ecx, r10d
add edx, r10d
inc r10d
mov ecx, dword [rbx + rcx*4]
xor dword [rbx + rdx*4], ecx
cmp r10d, r12d
jb 0x1401ac31b
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x39], r13d
mov qword [rbp - 0x41], rdi
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rdx, [rbx + 0x1320]
mov dword [rbp - 0x59], r13d
lea rcx, [rbp - 0x31]
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 0x11], xmm0
mov dword [rbp - 0x29], r13d
mov qword [rbp - 0x31], rdx
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x21]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp + 0xf], xmm0
mov dword [rbp - 0x19], r13d
mov qword [rbp - 0x21], rdx
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x51]
lea rax, [rbx + 0x24f0]
mov dword [rbp - 0x59], r13d
movaps xmm0, xmmword [rbp - 0x61]
movdqa xmmword [rbp - 1], xmm0
mov qword [rbp - 0x51], rax
mov dword [rbp - 0x49], r13d
call fcn.14019c7b8
mov qword [rbp - 0x61], rax
lea r9, [rbp + 0xf]
mov dword [rbp - 0x59], r13d
lea rax, [rbp - 0x11]
movaps xmm0, xmmword [rbp - 0x61]
lea r8, [rbp - 1]
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x61]
mov rcx, r14
movdqa xmmword [rbp - 0x61], xmm0
mov qword [rsp + 0x20], rax
call fcn.1401ae398
mov rax, qword [rbp + 0x5f]
lea r8, [rbp - 0x11]
mov qword [rsp + 0x30], rsi
mov rdx, r15
mov qword [rsp + 0x28], rbx
mov rcx, r14
mov qword [rsp + 0x20], rdi
movaps xmm0, xmmword [rax]
movdqa xmmword [rbp - 0x11], xmm0
call fcn.1401a91e8
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret