Function at 0x140070500
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov qword [rsp + 0x40], rcx
mov rax, qword [0x140346038]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rsi, qword [0x140362950]
cmp rsi, 1
jbe 0x140070feb
mov qword [rsp + 0x48], rsi
mov rax, qword [rsi]
test al, 0x19
jne 0x140070f6c
mov rcx, rax
or rcx, 8
mov rdx, qword [rsp + 0x48]
lock cmpxchg qword [rdx], rcx
jne 0x140070f6c
mov rsi, qword [0x140362950]
cmp rsi, 1
jbe 0x14007102b
mov rax, qword [rsi]
test al, 8
je 0x14007110a
mov rax, qword [0x140362960]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14007109f
mov rax, qword [rsp + 0x40]
mov r14, qword [rax + 8]
test r14, r14
je 0x140071073
movabs rax, 0x9ae16a3b2f90404f
mov qword [rsp + 0x38], rax
mov rcx, r14
call fcn.14017ed70
mov r12, rax
cmp rax, 0x20
jbe 0x1400707f7
cmp r12, 0x40
ja 0x14007126c
mov rcx, qword [r14 + 0x18]
mov r8, qword [r14 + r12 - 0x10]
lea rax, [r8 + r12]
movabs rbx, 0xc3a5c85c97cb3127
imul rax, rbx
add rax, qword [r14]
lea r11, [rax + rcx]
rol r11, 0xc
mov rsi, rax
rol rsi, 0x1b
add rax, qword [r14 + 8]
mov r9, qword [r14 + 0x10]
mov rdx, rax
rol rdx, 0x39
add rax, r9
add r9, qword [r14 + r12 - 0x20]
mov r10, qword [r14 + r12 - 8]
add r10, rcx
lea rdi, [r10 + r9]
rol rdi, 0xc
add rdx, rsi
mov rsi, r9
rol rsi, 0x1b
add rdx, r11
add r9, qword [r14 + r12 - 0x18]
mov r11, r9
rol r11, 0x39
add r9, r8
add r10, r9
rol r9, 0x21
add rsi, rcx
add rsi, r11
add rsi, rdi
add rsi, r9
add rsi, rax
rol rax, 0x21
add rax, rdx
movabs rdx, 0x9ae16a3b2f90404f
imul rsi, rdx
add r10, rax
imul r10, rbx
add r10, rsi
mov rcx, r10
shr rcx, 0x2f
xor rcx, r10
imul rcx, rbx
add rcx, rax
mov rbx, rcx
shr rbx, 0x2f
xor rbx, rcx
imul rbx, rdx
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 8]
test rdi, rdi
je 0x1400707b9
mov rax, rdi
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, rdi
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs rsi, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
cmp rsi, 1
ja 0x1400707db
lea r13, [rdi - 1]
and r13, rbx
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov rax, qword [rax + r13*8]
test rax, rax
je 0x140070760
mov rbp, qword [rax]
test rbp, rbp
je 0x140070760
lea r15, [rdi - 1]
mov rax, qword [rbp + 8]
cmp rax, rbx
je 0x14007074d
cmp esi, 1
ja 0x1400707c5
and rax, r15
cmp rax, r13
jne 0x140070760
cmp qword [rbp + 0x18], r12
je 0x1400710ee
mov rbp, qword [rbp]
test rbp, rbp
jne 0x140070733
mov ecx, 0x28
call fcn.140153bd4
cmp rax, 0xfffffffffffffff0
je 0x1400710c2
mov rbp, rax
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r12
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 8], rbx
mov qword [rbp], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x18]
inc rax
jns 0x140070896
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
jmp 0x14007089b
movabs r13, 0xaaaaaaaaaaaaaaaa
jmp 0x140070760
cmp rax, rdi
jb 0x140070748
xor edx, edx
div rdi
mov rax, rdx
jmp 0x140070748
mov r13, rbx
cmp rbx, rdi
jb 0x140070716
mov rax, rbx
xor edx, edx
div rdi
mov r13, rdx
jmp 0x140070716
cmp r12, 0x10
jbe 0x1400711b4
movabs rcx, 0xb492b66fbe98f273
imul rcx, qword [r14]
mov rdx, qword [r14 + 8]
mov rax, qword [r14 + r12 - 8]
movabs r8, 0x9ae16a3b2f90404f
imul rax, r8
mov r8, qword [r14 + r12 - 0x10]
movabs r9, 0xc3a5c85c97cb3127
imul r8, r9
movabs r9, 0xc949d7c7509e6557
xor r9, rdx
rol r9, 0x2c
add r9, rcx
add r9, r12
sub rcx, rdx
rol rcx, 0x15
sub r9, rax
rol rax, 0x22
add rax, rcx
add rax, r8
xor rax, r9
movabs rcx, 0x9ddfea08eb382d69
imul rax, rcx
xor r9, rax
shr rax, 0x2f
xor rax, r9
imul rax, rcx
mov rbx, rax
shr rbx, 0x2f
xor rbx, rax
imul rbx, rcx
jmp 0x140070697
cvtsi2ss xmm0, rax
mov rcx, rdi
shr rcx, 1
mov eax, edi
and eax, 1
or rax, rcx
test rdi, rdi
jns 0x1400708db
cvtsi2ss xmm1, rax
addss xmm1, xmm1
jmp 0x1400708e0
lea r8, [rdi - 1]
xor edx, edx
test rdi, r8
setne dl
jmp 0x14007092c
mov rcx, qword [rax]
mov qword [rbp], rcx
jmp 0x1400709c0
and r13, rbx
jmp 0x140070964
cvtsi2ss xmm1, rdi
mov rax, qword [rsp + 0x30]
movss xmm2, dword [rax + 0x20]
je 0x1400708f5
mulss xmm1, xmm2
ucomiss xmm0, xmm1
jbe 0x140070964
divss xmm0, xmm2
call fcn.140175e6c
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x1402f0098]
sar rdx, 0x3f
cvttss2si rax, xmm0
and rax, rdx
or rax, rcx
lea rcx, [rdi + rdi]
mov edx, 1
cmp rdi, 3
jae 0x1400708b9
or rdx, rcx
cmp rdx, rax
cmovbe rdx, rax
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.140104740
mov rdi, qword [rsi + 8]
lea r13, [rdi - 1]
test rdi, r13
je 0x1400708d3
cmp rbx, rdi
jb 0x14007106b
mov rax, rbx
xor edx, edx
div rdi
mov r13, rdx
mov r8, qword [rsp + 0x30]
mov rcx, qword [r8]
mov rax, qword [rcx + r13*8]
test rax, rax
jne 0x1400708c7
lea rax, [r8 + 0x10]
mov rdx, qword [r8 + 0x10]
mov qword [rbp], rdx
mov qword [r8 + 0x10], rbp
mov qword [rcx + r13*8], rax
mov rax, qword [rbp]
test rax, rax
je 0x1400709c3
mov rax, qword [rax + 8]
lea rcx, [rdi - 1]
test rdi, rcx
je 0x140070fe3
cmp rax, rdi
jb 0x1400709b4
xor edx, edx
div rdi
mov rax, rdx
shl rax, 3
mov rcx, qword [rsp + 0x30]
add rax, qword [rcx]
mov qword [rax], rbp
mov rax, qword [rsp + 0x30]
inc qword [rax + 0x18]
mov rsi, qword [rbp + 0x20]
test rsi, rsi
jne 0x140070ca3
movabs rdi, 0x7fffffffffffffef
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x20], rax
mov rbp, qword [0x140362960]
mov rcx, r14
call fcn.14017ed70
cmp rax, rdi
ja 0x140070fcd
mov rbx, rax
lea rsi, [rsp + 0x68]
cmp rax, 0x16
jbe 0x140070fd7
mov r12, rbx
or r12, 0xf
inc r12
mov rcx, r12
call fcn.140153bd4
mov r15, rax
mov qword [rsp + 0x68], rax
add rdi, 0x11
or rdi, r12
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x70], rbx
cmp r15, r14
ja 0x140070a55
mov rax, rbx
add rax, r15
cmp rax, r14
ja 0x14007114e
mov rcx, r15
mov rdx, r14
mov r8, rbx
call fcn.140158a70
mov byte [r15 + rbx], 0
movzx r13d, byte [rsp + 0x7f]
mov r15d, r13d
and r15d, 0x7f
test r13b, r13b
mov r14, qword [rsp + 0x68]
mov r12, rsi
cmovs r12, r14
cmovs r15, qword [rsp + 0x70]
cmp r15, 0x20
jbe 0x140070bf1
cmp r15, 0x40
ja 0x1400714c1
test r13b, r13b
cmovs rsi, r14
mov rcx, qword [rsi + 0x18]
mov r8, qword [r12 + r15 - 0x10]
lea rax, [r8 + r15]
movabs rbx, 0xc3a5c85c97cb3127
imul rax, rbx
add rax, qword [r12]
lea r11, [rax + rcx]
rol r11, 0xc
mov rdi, rax
rol rdi, 0x1b
add rax, qword [rsi + 8]
mov r9, qword [rsi + 0x10]
mov rdx, rax
rol rdx, 0x39
add rax, r9
add r9, qword [r12 + r15 - 0x20]
mov r10, qword [r12 + r15 - 8]
add r10, rcx
lea rsi, [r10 + r9]
rol rsi, 0xc
add rdx, rdi
mov rdi, r9
rol rdi, 0x1b
add rdx, r11
add r9, qword [r12 + r15 - 0x18]
mov r11, r9
rol r11, 0x39
add r9, r8
add r10, r9
rol r9, 0x21
add rdi, rcx
add rdi, r11
add rdi, rsi
add rdi, r9
add rdi, rax
rol rax, 0x21
add rax, rdx
movabs rdx, 0x9ae16a3b2f90404f
imul rdi, rdx
add r10, rax
imul r10, rbx
add r10, rdi
mov rcx, r10
shr rcx, 0x2f
xor rcx, r10
imul rcx, rbx
add rcx, rax
mov rax, rcx
shr rax, 0x2f
xor rax, rcx
imul rdx, rax
mov qword [rsp + 0x38], rdx
mov rdi, qword [rbp + 0x30]
test rdi, rdi
jne 0x140070cc7
xor ebp, ebp
test r13b, r13b
jns 0x140070b8b
mov rcx, r14
call fcn.140153bcc
test rbp, rbp
jne 0x140070cb3
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov r8, rax
xor r8, 0xc
mov edx, r8d
and edx, 0x18
and r8d, 6
cmp rdx, r8
jae 0x140070c97
mov rdx, rax
and rdx, 0xffffffffffffffd7
lock cmpxchg qword [rcx], rdx
jne 0x140070c97
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140156fe0
mov rax, qword [rsp + 0x40]
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r15, 0x10
jbe 0x140070e25
movabs rax, 0xb492b66fbe98f273
imul rax, qword [r12]
test r13b, r13b
cmovs rsi, r14
mov rcx, qword [rsi + 8]
movabs r9, 0x9ae16a3b2f90404f
imul r9, qword [r12 + r15 - 8]
movabs r10, 0xc3a5c85c97cb3127
imul r10, qword [r12 + r15 - 0x10]
movabs rdx, 0xc949d7c7509e6557
xor rdx, rcx
rol rdx, 0x2c
add rdx, rax
add rdx, r15
sub rdx, r9
sub rax, rcx
rol rax, 0x15
add rax, r10
rol r9, 0x22
add r9, rax
xor r9, rdx
movabs rax, 0x9ddfea08eb382d69
imul r9, rax
xor rdx, r9
shr r9, 0x2f
xor r9, rdx
imul r9, rax
mov rcx, r9
shr rcx, 0x2f
xor rcx, r9
imul rcx, rax
mov qword [rsp + 0x38], rcx
jmp 0x140070b6f
xor edx, edx
call fcn.140102bcc
jmp 0x140070bc8
cmp rsi, qword [rsp + 0x40]
je 0x140070b94
jmp 0x140070eda
mov rcx, qword [rsp + 0x40]
mov edx, 0x20
call fcn.1400a2130
jmp 0x140070b94
mov rax, rdi
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, rdi
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs rsi, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
cmp rsi, 1
jbe 0x140071782
mov rax, qword [rsp + 0x38]
mov rcx, rax
mov qword [rsp + 0x30], rax
cmp rax, rdi
jb 0x140070d4e
mov rax, qword [rsp + 0x38]
xor edx, edx
div rdi
mov qword [rsp + 0x30], rdx
mov rax, qword [rbp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x140070b7c
mov rbx, qword [rax]
test rbx, rbx
je 0x140070b7c
xor ebp, ebp
mov rax, qword [rbx + 8]
cmp qword [rsp + 0x38], rax
je 0x140070dab
cmp esi, 1
jbe 0x140071776
cmp rax, rdi
jb 0x140070d93
xor edx, edx
div rdi
mov rax, rdx
cmp rax, qword [rsp + 0x30]
jne 0x140070b7e
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140070d72
jmp 0x140070b7e
movzx ecx, byte [rbx + 0x27]
mov eax, ecx
and eax, 0x7f
test cl, cl
mov r8, qword [rbx + 0x18]
mov rdx, rax
cmovs rdx, r8
cmp rdx, r15
jne 0x140070d9e
test cl, cl
jns 0x140070f39
mov rcx, qword [rbx + 0x10]
mov rdx, r12
call fcn.140158970
test eax, eax
jne 0x140070d9e
mov rbp, rbx
jmp 0x140070b7e
mov eax, dword [r12]
mov ecx, dword [r12 + r15 - 4]
lea rax, [r15 + rax*8]
xor rax, rcx
movabs rdx, 0x9ddfea08eb382d69
imul rax, rdx
xor rcx, rax
shr rax, 0x2f
xor rax, rcx
imul rax, rdx
mov rcx, rax
shr rcx, 0x2f
xor rcx, rax
imul rcx, rdx
jmp 0x140070c8d
cmp r15, 9
jae 0x140070e92
cmp r15, 4
jae 0x140070de6
test r15, r15
je 0x140070b6f
movzx eax, byte [r12]
mov rcx, r15
shr rcx, 1
movzx ecx, byte [r12 + rcx]
movzx edx, byte [r15 + r12 - 1]
shl rcx, 8
or rcx, rax
lea rax, [r15 + rdx*4]
movabs r8, 0x9ae16a3b2f90404f
imul rcx, r8
movabs rdx, 0xc949d7c7509e6557
imul rdx, rax
xor rdx, rcx
mov rax, rdx
shr rax, 0x2f
xor rax, rdx
imul r8, rax
mov qword [rsp + 0x38], r8
jmp 0x140070b6f
mov rax, qword [r12 + r15 - 8]
lea rdx, [rax + r15]
mov ecx, r15d
ror rdx, cl
mov rcx, qword [r12]
xor rcx, rdx
movabs r8, 0x9ddfea08eb382d69
imul rcx, r8
xor rdx, rcx
shr rcx, 0x2f
xor rcx, rdx
imul rcx, r8
mov rdx, rcx
shr rdx, 0x2f
xor rdx, rcx
imul rdx, r8
xor rdx, rax
jmp 0x140070b6a
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rcx, rax
xor rcx, 0xc
mov edx, ecx
and edx, 0x18
and ecx, 6
cmp rdx, rcx
jae 0x14007174d
mov rcx, rax
and rcx, 0xffffffffffffffd7
mov rdx, qword [rsp + 0x48]
lock cmpxchg qword [rdx], rcx
jne 0x14007174d
cmp qword [rsp + 0x40], 0
je 0x140070f2f
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x14037e008]
mov qword [rsp + 0x40], rsi
jmp 0x140070bc8
test al, al
je 0x140070dde
xor ecx, ecx
mov dl, byte [rbx + rcx + 0x10]
cmp dl, byte [r12 + rcx]
jne 0x140070d9e
inc rcx
cmp rax, rcx
jne 0x140070f43
jmp 0x140070dde
lea rcx, [0x140358c00]
call fcn.140095b30
jmp 0x140070f79
mov eax, dword [0x140358c00]
cmp eax, 0xdd
jne 0x140070f5e
mov ecx, dword [0x140358c04]
inc ecx
mov r8, qword [rsp + 0x48]
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
test al, 0x11
jne 0x140070f9d
test al, 8
je 0x140070fb9
dec ecx
cmp ecx, 1
jg 0x140070f86
lea rdx, [0x140304c88]
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
xor r9d, r9d
call fcn.140100042
jmp 0x140070562
mov rdx, rax
or rdx, 8
lock cmpxchg qword [r8], rdx
je 0x140070562
jmp 0x140070f96
lea rcx, [rsp + 0x68]
call fcn.1401bf470
mov byte [rsp + 0x7f], bl
mov r15, rsi
jmp 0x140070a41
and rax, rcx
jmp 0x1400709b4
lea rcx, [0x140362950]
call fcn.1400d86a0
test al, al
je 0x14007175e
mov qword [0x140362958], 0
lea rsi, [0x140362958]
lea rcx, [0x140362950]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400d85d0
jmp 0x14007053b
lea rcx, [0x140362950]
call fcn.1400d86a0
test al, al
je 0x14007176a
mov qword [0x140362958], 0
lea rsi, [0x140362958]
lea rcx, [0x140362950]
mov rdx, rsi
xor r8d, r8d
mov r9, rcx
call fcn.1400d85d0
jmp 0x140070573
mov r13, rbx
jmp 0x140070964
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.1401bf470
mov ecx, 0xb8
call fcn.140153bd4
mov rcx, rax
call fcn.14005c7a0
mov rax, qword [0x140362960]
mov qword [rsp + 0x30], rax
jmp 0x140070593
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x25
call fcn.1401bf470
mov rcx, qword [rbp + 0x10]
mov rdx, r14
mov r8, r12
call fcn.140158970
test eax, eax
je 0x1400709cc
jmp 0x140070757
mov rcx, rsi
call fcn.1401e21a7
lea rcx, [rax + 0x29]
test rax, rax
lea rax, [0x140304344]
cmovne rax, rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea rdx, [0x140304c22]
lea r9, str.thread_should_hold_write_lock_on_Mutex__p__s
mov ecx, 3
mov r8d, 0x9a7
call fcn.1401e15bd
ud2
lea rax, str.char_traits::copy_overlapped_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__stringchar_traits.h
lea r9, str.__s2_____s1____s2_____s1__n
mov r8d, 0x102
call fcn.1401bf470
mov eax, dword [r14]
mov ecx, dword [r14 + r12 - 4]
lea rax, [r12 + rax*8]
xor rax, rcx
movabs rdx, 0x9ddfea08eb382d69
imul rax, rdx
xor rcx, rax
shr rax, 0x2f
xor rax, rcx
imul rax, rdx
mov rbx, rax
shr rbx, 0x2f
xor rbx, rax
jmp 0x140070693
cmp r12, 9
jae 0x140071225
cmp r12, 4
jae 0x14007117a
movabs rbx, 0x9ae16a3b2f90404f
test r12, r12
je 0x140070697
movzx eax, byte [r14]
mov rcx, r12
shr rcx, 1
movzx ecx, byte [r14 + rcx]
movzx edx, byte [r12 + r14 - 1]
shl rcx, 8
or rcx, rax
lea rax, [r12 + rdx*4]
movabs r8, 0x9ae16a3b2f90404f
imul rcx, r8
movabs rdx, 0xc949d7c7509e6557
imul rdx, rax
xor rdx, rcx
mov rbx, rdx
shr rbx, 0x2f
xor rbx, rdx
imul rbx, r8
jmp 0x140070697
mov rax, qword [r14 + r12 - 8]
lea rdx, [rax + r12]
mov ecx, r12d
ror rdx, cl
mov rcx, qword [r14]
xor rcx, rdx
movabs r8, 0x9ddfea08eb382d69
imul rcx, r8
xor rdx, rcx
shr rcx, 0x2f
xor rcx, rdx
imul rcx, r8
mov rbx, rcx
shr rbx, 0x2f
xor rbx, rcx
imul rbx, r8
xor rbx, rax
jmp 0x140070697
movabs r13, 0xb492b66fbe98f273
movabs rdi, 0x9ddfea08eb382d69
mov r11, qword [r14 + r12 - 0x28]
mov rax, qword [r14 + r12 - 0x10]
mov rcx, qword [r14 + r12 - 0x38]
mov r8, qword [r14 + r12 - 0x30]
lea rdx, [rcx + rax]
mov r10, qword [r14 + r12 - 0x18]
lea rsi, [r8 + r12]
xor rsi, r10
imul rsi, rdi
mov r9, r10
xor r9, rsi
shr rsi, 0x2f
xor rsi, r9
imul rsi, rdi
mov r9, rsi
shr r9, 0x2f
xor r9, rsi
imul r9, rdi
mov rsi, qword [r14 + r12 - 0x40]
add rsi, r12
lea rbx, [rsi + r11]
add rbx, r9
rol rbx, 0x2b
add r8, rcx
add r8, rsi
mov rdi, r8
rol rdi, 0x14
add rdi, rsi
add rdi, rbx
add r8, r11
mov rcx, qword [r14 + r12 - 0x20]
add rcx, rdx
mov rsi, qword [r14 + r12 - 8]
add rcx, r13
lea r15, [rsi + r11]
add r15, rcx
rol r15, 0x2b
add r10, rax
add r10, rcx
mov rbx, r10
rol rbx, 0x14
add rbx, rcx
add rbx, r15
imul r11, r13
add r11, qword [r14]
add r10, rsi
lea rax, [r12 - 1]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x50], rax
xor ebp, ebp
mov rcx, r9
add r11, r8
add r11, rdx
mov r15, qword [r14 + rbp + 8]
mov rsi, qword [r14 + rbp + 0x10]
add r11, r15
rol r11, 0x1b
add rdx, rdi
mov rax, qword [r14 + rbp + 0x30]
mov qword [rsp + 0x58], rax
add rdx, rax
rol rdx, 0x16
movabs r9, 0xb492b66fbe98f273
imul r11, r9
mov rax, rdx
imul rax, r9
mov r9, r11
xor r9, rbx
mov r13, qword [r14 + rbp + 0x28]
add r8, r13
mov rdx, r8
add rdx, rax
add rcx, r10
movabs rax, 0xb492b66fbe98f273
imul rdi, rax
mov rax, qword [r14 + rbp + 0x18]
add rdi, qword [r14 + rbp]
add r10, rax
add r10, rdi
add r10, r9
rol r10, 0x2b
add r15, rsi
add r15, rdi
mov r8, r15
rol r8, 0x14
add rdi, r8
add rdi, r10
rol rcx, 0x1f
mov r8, r15
mov r11, rcx
movabs rcx, 0xb492b66fbe98f273
imul r11, rcx
add r8, rax
add rbx, r11
mov rax, qword [r14 + rbp + 0x38]
add rbx, qword [r14 + rbp + 0x20]
add rsi, rax
add rsi, rdx
add rsi, rbx
add r13, qword [rsp + 0x58]
add r13, rbx
mov rcx, r13
rol rcx, 0x14
add rbx, rcx
rol rsi, 0x2b
add rbx, rsi
mov r10, r13
add r10, rax
add rbp, 0x40
cmp qword [rsp + 0x50], rbp
jne 0x140071338
xor rdi, rbx
movabs rsi, 0x9ddfea08eb382d69
imul rdi, rsi
xor rbx, rdi
shr rdi, 0x2f
xor rdi, rbx
imul rdi, rsi
mov rax, rdi
shr rax, 0x2f
xor rax, rdi
imul rax, rsi
add rax, r11
xor r8, r10
imul r8, rsi
xor r10, r8
shr r8, 0x2f
xor r8, r10
imul r8, rsi
mov rcx, r8
shr rcx, 0x2f
xor rcx, r8
imul rcx, rsi
mov r8, rdx
shr r8, 0x2f
xor r8, rdx
movabs rdx, 0xb492b66fbe98f273
imul r8, rdx
add r8, r9
add r8, rcx
xor r8, rax
imul r8, rsi
xor rax, r8
shr r8, 0x2f
xor r8, rax
imul r8, rsi
mov rbx, r8
shr rbx, 0x2f
xor rbx, r8
imul rbx, rsi
jmp 0x140070697
movabs rbx, 0xb492b66fbe98f273
movabs rdi, 0x9ddfea08eb382d69
mov r11, qword [r12 + r15 - 0x28]
mov rax, qword [r12 + r15 - 0x10]
mov rcx, qword [r12 + r15 - 0x38]
mov r8, qword [r12 + r15 - 0x30]
lea rdx, [rcx + rax]
mov r10, qword [r12 + r15 - 0x18]
lea r9, [r8 + r15]
xor r9, r10
imul r9, rdi
mov rsi, r10
xor rsi, r9
shr r9, 0x2f
xor r9, rsi
imul r9, rdi
mov rsi, r9
shr rsi, 0x2f
xor rsi, r9
imul rsi, rdi
mov r9, qword [r12 + r15 - 0x40]
add r9, r15
lea rdi, [r9 + r11]
mov qword [rsp + 0x30], rsi
add rdi, rsi
rol rdi, 0x2b
add r8, rcx
add r8, r9
mov rsi, r8
rol rsi, 0x14
add rsi, r9
add rsi, rdi
add r8, r11
mov rcx, qword [r12 + r15 - 0x20]
add rcx, rdx
mov r9, qword [r12 + r15 - 8]
add rcx, rbx
lea rbx, [r9 + r11]
add rbx, rcx
rol rbx, 0x2b
add r10, rax
add r10, rcx
mov rdi, r10
rol rdi, 0x14
add rdi, rcx
add rdi, rbx
movabs rax, 0xb492b66fbe98f273
imul r11, rax
add r11, qword [r12]
add r10, r9
lea rax, [r15 - 1]
and rax, 0xffffffffffffffc0
mov qword [rsp + 0x60], rax
xor ecx, ecx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x38], rax
add r11, r8
add r11, rdx
mov rbx, qword [r12 + rcx + 8]
mov r9, qword [r12 + rcx + 0x10]
add r11, rbx
rol r11, 0x1b
add rdx, rsi
mov rax, qword [r12 + rcx + 0x30]
mov qword [rsp + 0x58], rax
add rdx, rax
rol rdx, 0x16
movabs rax, 0xb492b66fbe98f273
imul r11, rax
mov rax, rdx
movabs rdx, 0xb492b66fbe98f273
imul rax, rdx
xor r11, rdi
mov rdx, qword [r12 + rcx + 0x28]
mov qword [rsp + 0x50], rdx
add r8, rdx
mov rdx, r8
add rdx, rax
add qword [rsp + 0x38], r10
movabs rax, 0xb492b66fbe98f273
imul rsi, rax
mov rax, qword [r12 + rcx + 0x18]
add rsi, qword [r12 + rcx]
add r10, rax
add r10, rsi
mov qword [rsp + 0x30], r11
add r10, r11
rol r10, 0x2b
add rbx, r9
add rbx, rsi
mov r8, rbx
rol r8, 0x14
add rsi, r8
add rsi, r10
mov r11, qword [rsp + 0x38]
rol r11, 0x1f
mov r8, rbx
movabs r10, 0xb492b66fbe98f273
imul r11, r10
add r8, rax
add rdi, r11
mov rax, qword [r12 + rcx + 0x38]
add rdi, qword [r12 + rcx + 0x20]
add r9, rax
add r9, rdx
add r9, rdi
mov rbx, qword [rsp + 0x50]
add rbx, qword [rsp + 0x58]
add rbx, rdi
mov r10, rbx
rol r10, 0x14
add rdi, r10
rol r9, 0x2b
add rdi, r9
mov r10, rbx
add r10, rax
add rcx, 0x40
cmp qword [rsp + 0x60], rcx
jne 0x14007159c
xor rsi, rdi
movabs r9, 0x9ddfea08eb382d69
imul rsi, r9
xor rdi, rsi
shr rsi, 0x2f
xor rsi, rdi
imul rsi, r9
mov rax, rsi
shr rax, 0x2f
xor rax, rsi
imul rax, r9
add rax, r11
xor r8, r10
imul r8, r9
xor r10, r8
shr r8, 0x2f
xor r8, r10
imul r8, r9
mov rcx, r8
shr rcx, 0x2f
xor rcx, r8
imul rcx, r9
mov r8, rdx
shr r8, 0x2f
xor r8, rdx
movabs rdx, 0xb492b66fbe98f273
imul r8, rdx
add r8, qword [rsp + 0x30]
add r8, rcx
xor r8, rax
imul r8, r9
xor rax, r8
shr r8, 0x2f
xor r8, rax
imul r8, r9
mov rax, r8
shr rax, 0x2f
xor rax, r8
imul rax, r9
mov qword [rsp + 0x38], rax
jmp 0x140070b6f
mov rcx, qword [rsp + 0x48]
xor edx, edx
call fcn.140102bcc
jmp 0x140070f11
mov rsi, qword [0x140362950]
jmp 0x14007053b
mov rsi, qword [0x140362950]
jmp 0x140070573
lea rcx, [rdi - 1]
and rax, rcx
jmp 0x140070d93
lea rax, [rdi - 1]
and rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
jmp 0x140070d4e