Function at 0x140125a60
Capabilities:
Encrypt data using curve25519
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3b8
movaps xmmword [rsp + 0x3a0], xmm6
mov rdi, r9
mov r13, r8
mov r12, rdx
mov r14, rcx
mov rax, qword [0x140158018]
xor rax, rsp
mov qword [rsp + 0x398], rax
movaps xmm6, xmmword [0x140136a00]
lea rsi, [rsp + 0x370]
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
movaps xmmword [rsi - 0x10], xmm6
movaps xmmword [rsi - 0x20], xmm6
lea r15, [rsp + 0x350]
mov edx, 0x20
mov rcx, r9
mov r8, r15
call fcn.1401009f0
and byte [r15], 0xf8
mov al, byte [r15 + 0x1f]
and al, 0x3f
or al, 0x40
mov byte [r15 + 0x1f], al
lea rbp, [rsp + 0x278]
mov r8d, 0xd8
mov rcx, rbp
mov dl, 0xaa
call fcn.1400a05e0
mov rcx, rbp
call fcn.140101770
mov r8d, 0x20
mov rcx, rbp
mov rdx, rsi
call fcn.1400484d0
mov rcx, rbp
mov rdx, r12
mov r8, r13
call fcn.1400484d0
lea rbx, [rsp + 0x230]
movaps xmmword [rbx + 0x30], xmm6
movaps xmmword [rbx + 0x20], xmm6
movaps xmmword [rbx + 0x10], xmm6
movaps xmmword [rbx], xmm6
mov rcx, rbx
mov rdx, rbp
call fcn.140101800
mov rcx, rbx
call fcn.140124c80
lea rsi, [rsp + 0x190]
mov r8d, 0xa0
mov rcx, rsi
mov dl, 0xaa
call fcn.1400a05e0
lea r8, [0x14014a7e0]
mov rcx, rsi
mov rdx, rbx
call fcn.140092e90
mov qword [rsp + 0x148], r14
mov rcx, r14
mov rdx, rsi
call fcn.140124ac0
mov rcx, rbp
call fcn.140101770
mov r8d, 0x20
mov rcx, rbp
mov rdx, r14
call fcn.1400484d0
add rdi, 0x20
mov r8d, 0x20
mov rcx, rbp
mov rdx, rdi
call fcn.1400484d0
mov rcx, rbp
mov rdx, r12
mov r8, r13
call fcn.1400484d0
lea rsi, [rsp + 0x150]
movaps xmmword [rsi + 0x30], xmm6
movaps xmmword [rsi + 0x20], xmm6
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
mov rcx, rsi
mov rdx, rbp
call fcn.140101800
mov rcx, rsi
call fcn.140124c80
movzx eax, word [rsi]
movzx ecx, byte [rsi + 2]
movzx edx, byte [rsi + 3]
shl edx, 8
or edx, ecx
and ecx, 0x1f
shl rcx, 0x10
or rcx, rax
mov qword [rsp + 0x90], rcx
movzx eax, byte [rsi + 4]
shl eax, 0x10
or eax, edx
movzx ecx, byte [rsi + 5]
movzx edx, byte [rsi + 6]
shl edx, 8
or edx, ecx
shl ecx, 0x18
or ecx, eax
mov qword [rsp + 0x28], rcx
movzx eax, byte [rsi + 7]
movzx ecx, byte [rsi + 8]
shl ecx, 8
or ecx, eax
shl eax, 0x10
or eax, edx
mov qword [rsp + 0x70], rax
movzx eax, byte [rsi + 9]
shl eax, 0x10
or eax, ecx
movzx ecx, byte [rsi + 0xa]
movzx edx, byte [rsi + 0xb]
shl edx, 8
or edx, ecx
shl ecx, 0x18
or ecx, eax
mov qword [rsp + 0x58], rcx
movzx eax, byte [rsi + 0xc]
shl eax, 0x10
or eax, edx
movzx ecx, byte [rsi + 0xd]
movzx edx, byte [rsi + 0xe]
shl edx, 8
or edx, ecx
shl ecx, 0x18
or ecx, eax
mov qword [rsp + 0x50], rcx
movzx eax, byte [rsi + 0xf]
movzx ecx, byte [rsi + 0x10]
shl ecx, 8
or ecx, eax
shl eax, 0x10
or eax, edx
mov qword [rsp + 0x60], rax
movzx eax, byte [rsi + 0x11]
shl eax, 0x10
or eax, ecx
movzx edx, byte [rsi + 0x12]
mov r12d, 0xff
mov rcx, rdx
and rcx, r12
shl edx, 0x18
or edx, eax
mov qword [rsp + 0x48], rdx
movzx eax, byte [rsi + 0x13]
shl rax, 8
or rax, rcx
movzx ecx, byte [rsi + 0x14]
shl rcx, 0x10
or rcx, rax
mov qword [rsp + 0x38], rcx
movzx eax, byte [rsi + 0x17]
movzx ecx, byte [rsi + 0x18]
shl ecx, 8
or ecx, eax
mov edx, eax
and edx, 0x1f
shl rdx, 0x10
movzx eax, word [rsi + 0x15]
or rdx, rax
mov qword [rsp + 0x98], rdx
movzx eax, byte [rsi + 0x19]
shl eax, 0x10
or eax, ecx
movzx ecx, byte [rsi + 0x1b]
shl ecx, 8
movzx edx, byte [rsi + 0x1a]
or ecx, edx
shl edx, 0x18
or edx, eax
mov qword [rsp + 0xa0], rdx
movzx eax, byte [rsi + 0x1d]
shl rax, 8
movzx edx, byte [rsi + 0x1c]
or rax, rdx
shl edx, 0x10
or edx, ecx
mov qword [rsp + 0xa8], rdx
movzx ecx, byte [rsi + 0x1e]
shl rcx, 0x10
or rcx, rax
movzx eax, byte [rsi + 0x1f]
shl rax, 0x18
or rax, rcx
mov qword [rsp + 0xc8], rax
movzx eax, byte [r15 + 3]
shl eax, 8
movzx r11d, byte [r15 + 2]
or eax, r11d
and r11d, 0x1f
shl r11, 0x10
movzx ecx, word [r15]
or r11, rcx
movzx ecx, byte [r15 + 4]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [r15 + 6]
shl eax, 8
movzx edx, byte [r15 + 5]
or eax, edx
mov r13d, edx
shl r13d, 0x18
or r13d, ecx
movzx ecx, byte [r15 + 8]
shl ecx, 8
movzx edx, byte [r15 + 7]
or ecx, edx
shl edx, 0x10
or edx, eax
mov qword [rsp + 0x68], rdx
movzx eax, byte [r15 + 9]
shl eax, 0x10
or eax, ecx
movzx ecx, byte [r15 + 0xb]
shl ecx, 8
movzx edx, byte [r15 + 0xa]
or ecx, edx
shl edx, 0x18
or edx, eax
mov qword [rsp + 0x20], rdx
movzx eax, byte [r15 + 0xc]
shl eax, 0x10
or eax, ecx
movzx ecx, byte [r15 + 0xe]
shl ecx, 8
movzx edx, byte [r15 + 0xd]
or ecx, edx
shl edx, 0x18
or edx, eax
mov qword [rsp + 0x88], rdx
movzx eax, byte [r15 + 0x10]
shl eax, 8
movzx edx, byte [r15 + 0xf]
or eax, edx
shl edx, 0x10
or edx, ecx
mov qword [rsp + 0x40], rdx
movzx ecx, byte [r15 + 0x11]
shl ecx, 0x10
or ecx, eax
movzx edx, byte [r15 + 0x12]
mov rax, rdx
shl edx, 0x18
or edx, ecx
mov qword [rsp + 0x80], rdx
and rax, r12
movzx ecx, byte [r15 + 0x13]
shl rcx, 8
or rcx, rax
movzx eax, byte [r15 + 0x14]
shl rax, 0x10
or rax, rcx
mov qword [rsp + 0x30], rax
movzx eax, byte [r15 + 0x18]
shl eax, 8
movzx ecx, byte [r15 + 0x17]
or eax, ecx
mov edx, ecx
and edx, 0x1f
shl rdx, 0x10
movzx ecx, word [r15 + 0x15]
or rdx, rcx
mov qword [rsp + 0xd0], rdx
movzx ecx, byte [r15 + 0x19]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [r15 + 0x1b]
shl eax, 8
movzx edx, byte [r15 + 0x1a]
or eax, edx
shl edx, 0x18
or edx, ecx
mov qword [rsp + 0xb8], rdx
movzx ecx, byte [r15 + 0x1d]
shl rcx, 8
movzx edx, byte [r15 + 0x1c]
or rcx, rdx
shl edx, 0x10
or edx, eax
mov qword [rsp + 0xd8], rdx
movzx eax, byte [r15 + 0x1e]
shl rax, 0x10
or rax, rcx
movzx ecx, byte [r15 + 0x1f]
shl rcx, 0x18
or rcx, rax
mov qword [rsp + 0xc0], rcx
lea rdx, [rsp + 0x230]
movzx eax, byte [rdx + 3]
shl eax, 8
movzx r15d, byte [rdx + 2]
or eax, r15d
and r15d, 0x1f
shl r15, 0x10
movzx ecx, word [rdx]
or r15, rcx
movzx ecx, byte [rdx + 4]
mov r10, rdx
shl ecx, 0x10
or ecx, eax
movzx eax, byte [rdx + 6]
shl eax, 8
movzx edx, byte [rdx + 5]
or eax, edx
shl edx, 0x18
or edx, ecx
mov qword [rsp + 0x140], rdx
movzx ecx, byte [r10 + 8]
shl ecx, 8
movzx edx, byte [r10 + 7]
or ecx, edx
mov r9d, edx
shl r9d, 0x10
or r9d, eax
movzx ebp, byte [r10 + 9]
shl ebp, 0x10
or ebp, ecx
movzx ecx, byte [r10 + 0xb]
shl ecx, 8
movzx eax, byte [r10 + 0xa]
or ecx, eax
mov r14d, eax
shl r14d, 0x18
or r14d, ebp
movzx ebp, byte [r10 + 0xc]
shl ebp, 0x10
or ebp, ecx
movzx esi, byte [r10 + 0xe]
shl esi, 8
movzx ecx, byte [r10 + 0xd]
or esi, ecx
mov r8d, ecx
shl r8d, 0x18
or r8d, ebp
movzx ebp, byte [r10 + 0x10]
shl ebp, 8
movzx edi, byte [r10 + 0xf]
or ebp, edi
mov eax, edi
shl eax, 0x10
or eax, esi
mov qword [rsp + 0x108], rax
movzx esi, byte [r10 + 0x11]
mov rax, r10
shl esi, 0x10
or esi, ebp
movzx ecx, byte [r10 + 0x12]
and r12, rcx
shl ecx, 0x18
or ecx, esi
mov qword [rsp + 0xf0], rcx
movzx edi, byte [r10 + 0x13]
shl rdi, 8
or rdi, r12
movzx esi, byte [rax + 0x14]
shl rsi, 0x10
or rsi, rdi
mov qword [rsp + 0x100], rsi
movzx edi, byte [rax + 0x18]
shl edi, 8
movzx esi, byte [rax + 0x17]
mov qword [rsp + 0xe8], rsi
or edi, esi
movzx ebp, byte [rax + 0x19]
mov rbx, rax
shl ebp, 0x10
or ebp, edi
movzx esi, byte [rax + 0x1b]
shl esi, 8
movzx edi, byte [rax + 0x1a]
or esi, edi
mov eax, edi
shl eax, 0x18
or eax, ebp
mov qword [rsp + 0xf8], rax
movzx ebp, byte [rbx + 0x1d]
shl rbp, 8
movzx eax, byte [rbx + 0x1c]
or rbp, rax
shl eax, 0x10
or eax, esi
mov qword [rsp + 0xe0], rax
movzx eax, byte [rbx + 0x1e]
shl rax, 0x10
or rax, rbp
movzx ebp, byte [rbx + 0x1f]
shl rbp, 0x18
or rbp, rax
mov qword [rsp + 0x128], rbp
mov rax, r11
mov r12, qword [rsp + 0x90]
imul rax, r12
add rax, r15
mov qword [rsp + 0x110], rax
mov rbp, qword [rsp + 0x28]
shr ebp, 5
mov r15d, 0x1fffff
and ebp, r15d
shr r13d, 5
and r13d, r15d
mov rdi, r13
imul rdi, r12
mov rsi, r11
imul rsi, rbp
add rsi, rdi
mov qword [rsp + 0x138], rsi
mov rdi, qword [rsp + 0x70]
shr edi, 2
and edi, r15d
mov rsi, r13
imul rsi, rbp
mov r10, rbp
mov qword [rsp + 0x28], rbp
mov rbp, r11
mov rcx, r11
imul rbp, rdi
add rbp, rsi
mov rsi, qword [rsp + 0x68]
shr esi, 2
and esi, r15d
mov rax, rsi
imul rax, r12
add rbp, rax
shr r9d, 2
and r9d, r15d
add rbp, r9
mov qword [rsp + 0x120], rbp
mov r11, qword [rsp + 0x58]
shr r11d, 7
and r11d, r15d
mov rax, r13
mov rbx, r13
imul rax, rdi
mov rdx, rdi
mov qword [rsp + 0x70], rdi
mov rdi, rcx
imul rdi, r11
add rdi, rax
mov rax, rsi
imul rax, r10
add rdi, rax
mov r10, qword [rsp + 0x20]
shr r10d, 7
and r10d, r15d
mov rax, r10
imul rax, r12
add rdi, rax
shr r14d, 7
and r14d, r15d
add rdi, r14
mov qword [rsp + 0x130], rdi
mov r13, qword [rsp + 0x50]
shr r13d, 4
and r13d, r15d
mov r14d, 0x1fffff
mov rax, rbx
imul rax, r11
mov rbp, rcx
imul rbp, r13
add rbp, rax
mov rax, rsi
imul rax, rdx
add rbp, rax
mov rax, r10
mov rdx, qword [rsp + 0x28]
imul rax, rdx
add rbp, rax
mov rdi, qword [rsp + 0x88]
shr edi, 4
and edi, r14d
mov rax, rdi
imul rax, r12
add rbp, rax
shr r8d, 4
mov eax, 0x1fffff
and r8d, eax
add rbp, r8
mov qword [rsp + 0x118], rbp
mov r15, qword [rsp + 0x60]
shr r15d, 1
and r15d, eax
mov r8d, 0x1fffff
mov rax, rbx
mov qword [rsp + 0x50], r13
imul rax, r13
mov r14, rcx
imul rcx, r15
mov qword [rsp + 0x60], r15
add rcx, rax
mov rax, rsi
mov r9, rsi
mov qword [rsp + 0x68], rsi
mov r12, r11
imul rax, r11
add rcx, rax
mov rsi, r10
mov qword [rsp + 0x20], r10
mov rax, r10
mov r11, qword [rsp + 0x70]
imul rax, r11
add rcx, rax
mov rax, rdi
imul rax, rdx
add rcx, rax
mov rbp, qword [rsp + 0x40]
shr ebp, 1
and ebp, r8d
mov rax, rbp
mov rdx, qword [rsp + 0x90]
imul rax, rdx
add rcx, rax
mov rax, qword [rsp + 0x108]
shr eax, 1
mov r10d, 0x1fffff
and eax, r10d
add rcx, rax
mov qword [rsp + 0x108], rcx
mov r8, qword [rsp + 0x48]
shr r8d, 6
and r8d, r10d
mov rax, rbx
imul rax, r15
mov rcx, r14
imul rcx, r8
mov r10, r8
add rcx, rax
imul r9, r13
add rcx, r9
mov rax, rsi
imul rax, r12
mov r13, r12
mov qword [rsp + 0x58], r12
add rcx, rax
mov rax, rdi
imul rax, r11
mov r8, r11
add rcx, rax
mov rax, rbp
mov r15, qword [rsp + 0x28]
imul rax, r15
add rcx, rax
mov r11, qword [rsp + 0x80]
shr r11d, 6
mov esi, 0x1fffff
and r11d, esi
mov rax, r11
mov qword [rsp + 0x80], r11
imul rax, rdx
add rcx, rax
mov rax, qword [rsp + 0xf0]
shr eax, 6
and eax, esi
add rcx, rax
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x38]
shr rax, 3
mov qword [rsp + 0x38], rax
mov rcx, rbx
mov r12, rbx
mov qword [rsp + 0xb0], rbx
imul rcx, r10
mov rbx, r14
mov qword [rsp + 0x78], r14
mov rsi, r14
imul rsi, rax
add rsi, rcx
mov rdx, qword [rsp + 0x68]
mov rcx, rdx
mov r14, qword [rsp + 0x60]
imul rcx, r14
add rsi, rcx
mov rax, qword [rsp + 0x20]
mov rcx, rax
mov r9, qword [rsp + 0x50]
imul rcx, r9
add rsi, rcx
mov rcx, rdi
imul rcx, r13
add rsi, rcx
mov rcx, rbp
mov r13, rbp
imul rcx, r8
add rsi, rcx
imul r11, r15
add rsi, r11
mov rcx, qword [rsp + 0x30]
shr rcx, 3
mov qword [rsp + 0x30], rcx
mov rbp, qword [rsp + 0x90]
imul rcx, rbp
add rsi, rcx
mov rcx, qword [rsp + 0x100]
shr rcx, 3
add rsi, rcx
mov qword [rsp + 0x100], rsi
mov rcx, r12
mov r11, qword [rsp + 0x38]
imul rcx, r11
mov rsi, rbx
mov r15, qword [rsp + 0x98]
imul rsi, r15
add rsi, rcx
mov rcx, rdx
imul rcx, r10
mov r12, r10
mov qword [rsp + 0x48], r10
add rsi, rcx
imul rax, r14
mov r8, r14
add rsi, rax
mov rcx, rdi
mov r14, rdi
mov qword [rsp + 0x88], rdi
imul rcx, r9
add rsi, rcx
mov qword [rsp + 0x40], r13
mov rcx, r13
imul rcx, qword [rsp + 0x58]
add rsi, rcx
mov rcx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
imul rcx, rbx
add rsi, rcx
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
imul rcx, qword [rsp + 0x28]
add rsi, rcx
mov rdx, qword [rsp + 0xd0]
mov rcx, rdx
imul rcx, rbp
add rsi, rcx
lea rcx, [rsp + 0x230]
movzx ecx, word [rcx + 0x15]
add rsi, rcx
mov rcx, qword [rsp + 0xe8]
and ecx, 0x1f
shl rcx, 0x10
add rsi, rcx
mov qword [rsp + 0xe8], rsi
mov r10, qword [rsp + 0xa0]
shr r10d, 5
mov eax, 0x1fffff
and r10d, eax
mov rcx, qword [rsp + 0xb0]
imul rcx, r15
mov rsi, qword [rsp + 0x78]
mov rax, rsi
imul rax, r10
mov r15, r10
mov qword [rsp + 0xa0], r10
add rax, rcx
mov rcx, qword [rsp + 0x68]
imul rcx, r11
add rax, rcx
mov rcx, qword [rsp + 0x20]
imul rcx, r12
add rax, rcx
mov rcx, r14
imul rcx, r8
add rax, rcx
imul r13, r9
add rax, r13
mov r13, qword [rsp + 0x80]
mov rcx, r13
mov rbp, qword [rsp + 0x58]
imul rcx, rbp
add rax, rcx
mov rcx, rdi
imul rcx, rbx
add rax, rcx
mov rcx, rdx
mov r9, rdx
mov rbx, qword [rsp + 0x28]
imul rcx, rbx
add rax, rcx
mov r10, qword [rsp + 0xb8]
shr r10d, 5
mov ecx, 0x1fffff
and r10d, ecx
mov rcx, r10
mov r11, r10
mov qword [rsp + 0xb8], r10
mov rdi, qword [rsp + 0x90]
imul rcx, rdi
add rax, rcx
mov rdx, qword [rsp + 0xf8]
shr edx, 5
mov ecx, 0x1fffff
and edx, ecx
add rax, rdx
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0xa8]
shr eax, 2
and eax, ecx
mov qword [rsp + 0xa8], rax
mov r14, qword [rsp + 0xb0]
mov rcx, r14
imul rcx, r15
mov rdx, rsi
imul rdx, rax
add rdx, rcx
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
mov r15, qword [rsp + 0x98]
imul rcx, r15
add rdx, rcx
mov r8, qword [rsp + 0x20]
mov rcx, r8
mov r12, qword [rsp + 0x38]
imul rcx, r12
add rdx, rcx
mov r10, qword [rsp + 0x88]
mov rcx, r10
imul rcx, qword [rsp + 0x48]
add rdx, rcx
mov rcx, qword [rsp + 0x40]
imul rcx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, r13
mov r13, qword [rsp + 0x50]
imul rcx, r13
add rdx, rcx
mov rcx, qword [rsp + 0x30]
imul rcx, rbp
add rdx, rcx
mov rbp, qword [rsp + 0x70]
imul r9, rbp
add rdx, r9
mov rcx, r11
imul rcx, rbx
add rdx, rcx
mov rbx, qword [rsp + 0xd8]
shr ebx, 2
mov r9d, 0x1fffff
and ebx, r9d
mov rcx, rbx
imul rcx, rdi
add rdx, rcx
mov rax, qword [rsp + 0xe0]
shr eax, 2
and eax, r9d
add rdx, rax
mov qword [rsp + 0xe0], rdx
mov rax, qword [rsp + 0xc8]
shr rax, 7
mov qword [rsp + 0xc8], rax
mov rcx, r14
mov rdi, qword [rsp + 0xa8]
imul rcx, rdi
mov r14, qword [rsp + 0x78]
imul r14, rax
add r14, rcx
mov rcx, rsi
imul rcx, qword [rsp + 0xa0]
add r14, rcx
imul r8, r15
add r14, r8
mov rcx, r10
imul rcx, r12
add r14, rcx
mov r9, qword [rsp + 0x40]
mov rcx, r9
imul rcx, qword [rsp + 0x48]
add r14, rcx
mov r15, qword [rsp + 0x80]
mov rcx, r15
mov r11, qword [rsp + 0x60]
imul rcx, r11
add r14, rcx
mov rcx, qword [rsp + 0x30]
imul rcx, r13
add r14, rcx
mov r12, qword [rsp + 0xd0]
mov rcx, r12
mov rsi, qword [rsp + 0x58]
imul rcx, rsi
add r14, rcx
mov r10, qword [rsp + 0xb8]
mov rcx, r10
imul rcx, rbp
add r14, rcx
mov qword [rsp + 0xd8], rbx
mov rcx, rbx
imul rcx, qword [rsp + 0x28]
add r14, rcx
mov rcx, qword [rsp + 0xc0]
shr rcx, 7
mov qword [rsp + 0xc0], rcx
mov rax, qword [rsp + 0x90]
imul rax, rcx
add r14, rax
mov rax, qword [rsp + 0x128]
shr rax, 7
add r14, rax
mov qword [rsp + 0x78], r14
mov rcx, qword [rsp + 0x68]
imul rcx, rdi
mov rax, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc8]
imul rax, r8
add rax, rcx
mov rcx, qword [rsp + 0x20]
mov rdi, qword [rsp + 0xa0]
imul rcx, rdi
add rax, rcx
mov r14, qword [rsp + 0x88]
mov rcx, r14
imul rcx, qword [rsp + 0x98]
add rax, rcx
mov rdx, qword [rsp + 0x38]
imul r9, rdx
add rax, r9
imul r15, qword [rsp + 0x48]
add rax, r15
mov r9, qword [rsp + 0x30]
mov rcx, r9
imul rcx, r11
mov r13, r11
add rax, rcx
mov rbp, qword [rsp + 0x50]
imul r12, rbp
add rax, r12
imul r10, rsi
mov r15, rsi
add rax, r10
imul rbx, qword [rsp + 0x70]
add rax, rbx
mov rcx, qword [rsp + 0x28]
imul rcx, qword [rsp + 0xc0]
add rax, rcx
mov qword [rsp + 0xb0], rax
mov rcx, qword [rsp + 0x20]
mov rsi, qword [rsp + 0xa8]
imul rcx, rsi
mov rbx, qword [rsp + 0x68]
imul rbx, r8
add rbx, rcx
mov r8, r14
mov rcx, r14
imul rcx, rdi
add rbx, rcx
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
mov r12, qword [rsp + 0x98]
imul rcx, r12
add rbx, rcx
mov r11, qword [rsp + 0x80]
mov rcx, r11
imul rcx, rdx
add rbx, rcx
mov rdx, r9
mov rcx, r9
imul rcx, qword [rsp + 0x48]
add rbx, rcx
mov r10, qword [rsp + 0xd0]
mov rcx, r10
imul rcx, r13
add rbx, rcx
mov r13, qword [rsp + 0xb8]
mov rcx, r13
imul rcx, rbp
add rbx, rcx
mov r14, qword [rsp + 0xd8]
mov rcx, r14
imul rcx, r15
add rbx, rcx
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xc0]
imul rax, rbp
add rbx, rax
mov qword [rsp + 0x68], rbx
mov rbx, r8
mov rcx, r8
imul rcx, rsi
mov rax, qword [rsp + 0x20]
mov r9, qword [rsp + 0xc8]
imul rax, r9
add rax, rcx
mov rcx, rdi
mov r15, qword [rsp + 0xa0]
imul rcx, r15
add rax, rcx
mov rsi, r11
mov rcx, r11
imul rcx, r12
add rax, rcx
mov r12, qword [rsp + 0x38]
imul rdx, r12
add rax, rdx
imul r10, qword [rsp + 0x48]
add rax, r10
mov r11, r13
mov rcx, r13
mov r8, qword [rsp + 0x60]
imul rcx, r8
add rax, rcx
mov rcx, r14
mov r10, qword [rsp + 0x50]
imul rcx, r10
add rax, rcx
mov rcx, qword [rsp + 0x58]
imul rcx, rbp
add rax, rcx
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0xa8]
imul rdi, rdx
imul rbx, r9
add rbx, rdi
mov rdi, rsi
mov rcx, rsi
imul rcx, r15
add rbx, rcx
mov r13, qword [rsp + 0x30]
mov rcx, r13
mov rsi, qword [rsp + 0x98]
imul rcx, rsi
add rbx, rcx
mov r9, qword [rsp + 0xd0]
mov rcx, r9
imul rcx, r12
add rbx, rcx
mov rcx, r11
mov r12, qword [rsp + 0x48]
imul rcx, r12
add rbx, rcx
mov rcx, r14
imul rcx, r8
add rbx, rcx
imul r10, rbp
add rbx, r10
mov qword [rsp + 0x88], rbx
mov rcx, rdi
mov r10, rdi
imul rcx, rdx
mov rdi, rdx
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0xc8]
imul rdx, r8
add rdx, rcx
mov rcx, r13
imul rcx, r15
add rdx, rcx
mov rax, r9
mov rcx, r9
imul rcx, rsi
mov r9, rsi
add rdx, rcx
mov rcx, r11
mov rbx, qword [rsp + 0x38]
imul rcx, rbx
add rdx, rcx
mov rcx, r14
imul rcx, r12
add rdx, rcx
mov rcx, qword [rsp + 0x60]
imul rcx, rbp
add rdx, rcx
mov qword [rsp + 0x40], rdx
mov rcx, r13
mov rsi, rdi
imul rcx, rdi
imul r10, r8
add r10, rcx
mov rcx, rax
imul rcx, r15
add r10, rcx
mov rcx, r11
imul rcx, r9
add r10, rcx
mov rdi, r10
mov rcx, r14
imul rcx, rbx
add rdi, rcx
mov rcx, r12
imul rcx, rbp
add rdi, rcx
mov rcx, rax
imul rcx, rsi
imul r13, r8
add r13, rcx
mov rcx, r11
imul rcx, r15
add r13, rcx
mov rcx, r14
imul rcx, r9
add r13, rcx
mov rcx, rbx
imul rcx, rbp
add r13, rcx
mov qword [rsp + 0x30], r13
mov rcx, r11
mov rdx, rsi
imul rcx, rsi
imul rax, r8
add rax, rcx
mov rcx, r14
imul rcx, r15
add rax, rcx
mov rcx, r9
imul rcx, rbp
add rax, rcx
mov rsi, rax
mov rcx, r14
imul rcx, rdx
imul r11, r8
add r11, rcx
mov rbx, rbp
imul r15, rbp
add r11, r15
mov rbp, r11
imul rdx, rbx
imul r14, r8
add r14, rdx
mov r12, r14
imul rbx, r8
mov r11d, 0x100000
mov r15, qword [rsp + 0x110]
lea rdx, [r15 + r11]
mov r10, rdx
shr r10, 0x15
add r10, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
shr ecx, 5
mov eax, 0x1fffff
and ecx, eax
add r10, rcx
and rdx, 0xffffffffffe00000
sub r15, rdx
mov qword [rsp + 0x110], r15
mov rcx, qword [rsp + 0x120]
lea rax, [rcx + r11]
mov qword [rsp + 0xc8], rax
shr rax, 0x15
add rax, qword [rsp + 0x130]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x118]
lea rax, [rcx + r11]
mov qword [rsp + 0x80], rax
sar rax, 0x15
add rax, qword [rsp + 0x108]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xf0]
add rax, r11
mov qword [rsp + 0x50], rax
sar rax, 0x15
add rax, qword [rsp + 0x100]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0xe8]
add rax, r11
mov qword [rsp + 0x90], rax
sar rax, 0x15
add rax, qword [rsp + 0xf8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xe0]
add rax, r11
mov qword [rsp + 0x58], rax
sar rax, 0x15
add rax, qword [rsp + 0x78]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xb0]
add rax, r11
mov qword [rsp + 0xa8], rax
sar rax, 0x15
add rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x20]
lea r15, [rax + r11]
mov qword [rsp + 0x78], r15
sar r15, 0x15
add r15, qword [rsp + 0x88]
mov qword [rsp + 0xb8], r15
mov r8, qword [rsp + 0x40]
lea r9, [r8 + r11]
mov rax, r9
sar rax, 0x15
add rax, rdi
mov r14, rax
mov r13, qword [rsp + 0x30]
lea rax, [r11 + r13]
mov rdx, rax
sar rdx, 0x15
add rdx, rsi
mov rcx, 0xffffffffffe00000
and rax, rcx
sub r13, rax
lea rax, [r11 + rbp]
mov rsi, rax
shr rsi, 0x15
add rsi, r12
movabs rcx, 0x7fffffffffe00000
and rax, rcx
sub rbp, rax
lea rax, [rbx + r11]
mov r12, rax
and rax, rcx
sub rbx, rax
lea rax, [r10 + r11]
mov qword [rsp + 0x68], rax
mov rdi, 0xffffffffffe00000
and rax, rdi
sub r10, rax
mov qword [rsp + 0x88], r10
mov rcx, qword [rsp + 0x28]
lea rax, [rcx + r11]
mov qword [rsp + 0x30], rax
and rax, rdi
mov r10, 0xffffffffffe00000
sub rcx, rax
mov qword [rsp + 0x28], rcx
mov rdi, r14
lea rax, [r14 + r11]
mov r14, rax
sar r14, 0x15
add r14, r13
and rax, r10
sub rdi, rax
mov qword [rsp + 0xc0], rdi
lea rax, [rdx + r11]
mov rcx, rax
sar rcx, 0x15
add rcx, rbp
and rax, r10
sub rdx, rax
lea rax, [rsi + r11]
mov rdi, rax
shr rdi, 0x15
add rdi, rbx
movabs rbx, 0x7fffffffffe00000
and rax, rbx
sub rsi, rax
shr r12, 0x15
imul rbp, r12, 0xfffffffffff59083
add rbp, r8
and r9, r10
sub rbp, r9
lea rax, [r15 + r11]
mov qword [rsp + 0xd0], rax
sar rax, 0x15
add rbp, rax
mov qword [rsp + 0x40], rbp
imul rax, r12, 0xa2c13
imul rbx, rdi, 0x72d18
add rbx, rax
imul rbp, r12, 0x72d18
imul rax, rdi, 0x9fb67
add rax, rbp
imul rbp, r12, 0x9fb67
imul r9, rdi, 0xfffffffffff0c653
add r9, rbp
imul r10, r12, 0x215d1
imul rbp, rdi, 0xfffffffffff59083
add rbp, r10
mov qword [rsp + 0x48], rbp
imul r10, rdi, 0xa2c13
imul r15, rsi, 0x72d18
add r15, r10
imul r13, rsi, 0x9fb67
add r13, rbx
imul r10, rsi, 0xfffffffffff0c653
add r10, rax
imul r8, rsi, 0x215d1
add r8, r9
imul r12, r12, 0xfffffffffff0c653
add r12, qword [rsp + 0x20]
imul rbx, rdi, 0x215d1
add r12, rbx
imul rbx, rsi, 0xfffffffffff59083
add r12, rbx
mov rax, qword [rsp + 0x78]
mov rbp, 0xffffffffffe00000
and rax, rbp
sub r12, rax
mov rax, qword [rsp + 0x38]
lea rbx, [rax + r11]
mov qword [rsp + 0xd8], rbx
sar rbx, 0x15
add r12, rbx
imul rbx, rsi, 0xa2c13
imul rsi, rcx, 0x72d18
add rsi, rbx
imul rdi, rcx, 0x9fb67
add rdi, r15
imul rax, rcx, 0xfffffffffff0c653
add rax, r13
imul rbp, rcx, 0xfffffffffff59083
add rbp, r8
mov qword [rsp + 0x20], rbp
imul rbx, rcx, 0xa2c13
imul r8, rdx, 0x72d18
add r8, rbx
imul r9, rdx, 0x9fb67
add r9, rsi
imul rbx, rdx, 0xfffffffffff0c653
add rbx, rdi
imul rsi, rdx, 0x215d1
add rsi, rax
mov qword [rsp + 0x78], rsi
add r10, qword [rsp + 0xb0]
imul rax, rcx, 0x215d1
add r10, rax
imul rax, rdx, 0xfffffffffff59083
add r10, rax
mov rcx, 0xffffffffffe00000
mov rax, qword [rsp + 0xa8]
and rax, rcx
sub r10, rax
mov rax, qword [rsp + 0x60]
lea r13, [rax + r11]
mov rax, r13
sar rax, 0x15
add r10, rax
mov rax, qword [rsp + 0x70]
add rax, r11
mov qword [rsp + 0xa8], rax
sar rax, 0x15
imul rsi, r14, 0xa2c13
add rsi, rax
add rsi, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x50]
and rax, rcx
mov rdi, 0xffffffffffe00000
sub rsi, rax
mov qword [rsp + 0x50], rsi
imul rax, rdx, 0xa2c13
imul rsi, r14, 0x72d18
add rsi, rax
imul rbp, r14, 0x9fb67
add rbp, r8
mov r15, qword [rsp + 0x98]
lea r8, [r15 + r11]
mov rcx, r8
sar rcx, 0x15
add rbp, rcx
add rbp, qword [rsp + 0xe8]
mov rax, qword [rsp + 0x90]
and rax, rdi
sub rbp, rax
imul rcx, r14, 0xfffffffffff0c653
add rcx, r9
imul r9, r14, 0x215d1
add r9, rbx
add r9, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xa0]
lea rax, [rdi + r11]
mov rbx, rax
sar rbx, 0x15
add r9, rbx
mov rdx, qword [rsp + 0x58]
mov rbx, 0xffffffffffe00000
and rdx, rbx
sub r9, rdx
imul rdx, r14, 0xfffffffffff59083
add rdx, qword [rsp + 0x78]
add rsi, r15
and r8, rbx
mov r15, 0xffffffffffe00000
sub rsi, r8
mov rbx, qword [rsp + 0x50]
add rbx, r11
mov qword [rsp + 0x90], rbx
sar rbx, 0x15
add rsi, rbx
mov qword [rsp + 0x58], rsi
add rcx, rdi
and rax, r15
sub rcx, rax
lea rax, [r11 + rbp]
mov qword [rsp + 0x78], rax
sar rax, 0x15
add rcx, rax
mov qword [rsp + 0xb0], rcx
add rdx, qword [rsp + 0x60]
and r13, r15
sub rdx, r13
lea rsi, [r9 + r11]
mov rax, rsi
sar rax, 0x15
add rdx, rax
mov r14, rdx
mov rcx, qword [rsp + 0x20]
add rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0xd8]
and rax, r15
sub rcx, rax
lea rbx, [r10 + r11]
mov rax, rbx
sar rax, 0x15
add rcx, rax
mov rdi, rcx
mov rax, 0xffffffffffe00000
and rbx, rax
sub r10, rbx
mov rdx, qword [rsp + 0x48]
add rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xd0]
and rcx, rax
mov r8, 0xffffffffffe00000
sub rdx, rcx
lea rbx, [r12 + r11]
mov rax, rbx
sar rax, 0x15
add rdx, rax
and rbx, r8
sub r12, rbx
mov rbx, qword [rsp + 0x40]
lea rax, [rbx + r11]
mov r15, rax
sar r15, 0x15
add r15, qword [rsp + 0xc0]
and rax, r8
sub rbx, rax
mov rcx, r14
lea rax, [r14 + r11]
mov r14, rax
sar r14, 0x15
add r14, r10
and rax, r8
sub rcx, rax
mov qword [rsp + 0xa0], rcx
lea rax, [rdi + r11]
mov r8, rax
sar r8, 0x15
add r8, r12
mov rcx, 0xffffffffffe00000
and rax, rcx
sub rdi, rax
mov qword [rsp + 0x20], rdi
lea rax, [rdx + r11]
mov r10, rax
sar r10, 0x15
add r10, rbx
and rax, rcx
mov rcx, 0xffffffffffe00000
sub rdx, rax
mov rax, qword [rsp + 0xb0]
add rax, r11
mov qword [rsp + 0x98], rax
sar rax, 0x15
imul rbx, r15, 0xfffffffffff59083
add rbx, rax
add rbx, r9
and rsi, rcx
sub rbx, rsi
mov qword [rsp + 0x60], rbx
imul rax, r15, 0x72d18
imul rcx, r10, 0x9fb67
add rcx, rax
imul rax, r15, 0x9fb67
imul rsi, r10, 0xfffffffffff0c653
add rsi, rax
imul rax, r15, 0xfffffffffff0c653
imul rbx, r10, 0x215d1
add rbx, rax
imul rax, r15, 0x215d1
imul rdi, r10, 0xfffffffffff59083
add rdi, rax
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rdx
imul rax, rdx, 0xa2c13
add rax, qword [rsp + 0x28]
mov qword [rsp + 0xb8], rax
imul r12, rdx, 0xfffffffffff0c653
add r12, rcx
imul rax, rdx, 0x215d1
add rax, rsi
mov qword [rsp + 0x28], rax
imul r13, rdx, 0xfffffffffff59083
add r13, rbx
mov rax, qword [rsp + 0x58]
add rax, r11
mov qword [rsp + 0xc0], rax
sar rax, 0x15
add r13, rax
add r13, rbp
mov rax, qword [rsp + 0x78]
mov rcx, 0xffffffffffe00000
and rax, rcx
sub r13, rax
add r12, qword [rsp + 0x50]
mov rax, qword [rsp + 0x90]
and rax, rcx
mov rcx, 0xffffffffffe00000
sub r12, rax
imul rax, r8, 0x215d1
add r12, rax
mov rbp, qword [rsp + 0x20]
imul rax, rbp, 0xfffffffffff59083
add r12, rax
imul rax, r14, 0xa2c13
add rax, qword [rsp + 0x110]
mov qword [rsp + 0x38], rax
imul rsi, r14, 0x72d18
add rsi, qword [rsp + 0x88]
imul rax, rbp, 0xa2c13
add rsi, rax
mov r9, qword [rsp + 0x68]
shr r9, 0x15
add r9, qword [rsp + 0x120]
mov rax, qword [rsp + 0xc8]
and rax, rcx
sub r9, rax
imul rax, r14, 0x9fb67
add r9, rax
imul rax, r8, 0xa2c13
add r9, rax
imul rax, rbp, 0x72d18
add r9, rax
mov qword [rsp + 0x68], r9
imul rdx, r14, 0xfffffffffff0c653
add rdx, qword [rsp + 0xb8]
imul rdi, r8, 0x72d18
add rdx, rdi
imul rdi, rbp, 0x9fb67
mov rax, rbp
add rdx, rdi
mov rbx, qword [rsp + 0x30]
sar rbx, 0x15
add rbx, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x80]
and rdi, rcx
sub rbx, rdi
imul rdi, r10, 0xa2c13
add rbx, rdi
mov rbp, qword [rsp + 0x48]
imul rdi, rbp, 0x72d18
add rbx, rdi
imul rdi, r14, 0x215d1
add rbx, rdi
imul rdi, r8, 0x9fb67
add rbx, rdi
imul rdi, rax, 0xfffffffffff0c653
add rbx, rdi
mov qword [rsp + 0x30], rbx
mov rcx, qword [rsp + 0x38]
lea rax, [rcx + r11]
mov rdi, rax
sar rdi, 0x15
add rdi, rsi
mov qword [rsp + 0x50], rdi
mov rsi, 0xffffffffffe00000
and rax, rsi
sub rcx, rax
mov qword [rsp + 0x38], rcx
lea rax, [r9 + r11]
mov qword [rsp + 0x88], rax
sar rax, 0x15
add rax, rdx
mov qword [rsp + 0x80], rax
imul r9, r15, 0xa2c13
add r9, qword [rsp + 0x70]
mov rax, qword [rsp + 0xa8]
and rax, rsi
mov rcx, 0xffffffffffe00000
sub r9, rax
imul rax, r10, 0x72d18
add r9, rax
imul rax, rbp, 0x9fb67
add r9, rax
imul rax, r14, 0xfffffffffff59083
add r9, rax
imul rax, r8, 0xfffffffffff0c653
add r9, rax
imul rax, qword [rsp + 0x20], 0x215d1
add r9, rax
lea rdx, [rbx + r11]
mov rax, rdx
mov r15, rdx
sar rax, 0x15
add r9, rax
mov rdx, qword [rsp + 0x28]
add rdx, qword [rsp + 0x58]
mov rax, qword [rsp + 0xc0]
and rax, rcx
sub rdx, rax
imul rax, r8, 0xfffffffffff59083
add rdx, rax
lea rbp, [r12 + r11]
mov rax, rbp
sar rax, 0x15
add rdx, rax
mov rsi, rdx
mov rax, 0xffffffffffe00000
and rbp, rax
sub r12, rbp
mov r14, qword [rsp + 0x40]
add r14, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x98]
and rdx, rax
mov rbx, 0xffffffffffe00000
sub r14, rdx
lea rbp, [r11 + r13]
mov rax, rbp
sar rax, 0x15
add r14, rax
mov rdi, r14
and rbp, rbx
sub r13, rbp
mov rax, qword [rsp + 0x60]
add rax, r11
mov rbx, rax
mov rcx, rax
sar rbx, 0x15
add rbx, qword [rsp + 0xa0]
lea r8, [r9 + r11]
mov rbp, r8
sar rbp, 0x15
add rbp, r12
mov rdx, rsi
lea rax, [rsi + r11]
mov r14, rax
sar r14, 0x15
add r14, r13
mov rsi, 0xffffffffffe00000
and rax, rsi
sub rdx, rax
mov qword [rsp + 0x28], rdx
lea rax, [rdi + r11]
mov qword [rsp + 0x20], rax
and rax, rsi
sub rdi, rax
mov qword [rsp + 0x40], rdi
mov r10, qword [rsp + 0x88]
and r10, rsi
and r15, rsi
mov qword [rsp + 0x58], r15
and rcx, rsi
mov qword [rsp + 0x48], rcx
mov rdx, qword [rsp + 0x50]
lea rax, [rdx + r11]
mov r13, rax
and rax, rsi
mov r15, qword [rsp + 0x80]
lea rcx, [r15 + r11]
mov rdi, rcx
and rcx, rsi
and r8, rsi
mov qword [rsp + 0x70], r8
mov r8, 0xffffffffffe00000
add r11, rbx
mov rsi, r11
and r11, r8
sub rbx, r11
sar rsi, 0x15
imul r12, rsi, 0xa2c13
add r12, qword [rsp + 0x38]
imul r8, rsi, 0x72d18
add r8, rdx
sub r8, rax
mov rax, r12
sar rax, 0x15
add r8, rax
imul rdx, rsi, 0x9fb67
add rdx, qword [rsp + 0x68]
sub rdx, r10
sar r13, 0x15
add rdx, r13
mov rax, r8
sar rax, 0x15
add rdx, rax
imul rax, rsi, 0xfffffffffff0c653
add rax, r15
sub rax, rcx
mov rcx, rdx
sar rcx, 0x15
add rax, rcx
imul r15, rsi, 0x215d1
add r15, qword [rsp + 0x30]
sub r15, qword [rsp + 0x58]
sar rdi, 0x15
add r15, rdi
mov rcx, rax
sar rcx, 0x15
add r15, rcx
imul r11, rsi, 0xfffffffffff59083
add r11, r9
sub r11, qword [rsp + 0x70]
mov rcx, r15
sar rcx, 0x15
add r11, rcx
mov r13, r11
sar r13, 0x15
add r13, rbp
mov r10, r13
sar r10, 0x15
add r10, qword [rsp + 0x28]
mov rcx, r10
sar rcx, 0x15
add rcx, r14
mov rdi, rcx
mov r9, rcx
sar rdi, 0x15
add rdi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x20]
sar rbp, 0x15
add rbp, qword [rsp + 0x60]
sub rbp, qword [rsp + 0x48]
mov rcx, rdi
sar rcx, 0x15
add rbp, rcx
mov rsi, rbp
sar rsi, 0x15
add rsi, rbx
mov ecx, 0x1fffff
and r12, rcx
and r8, rcx
and rdx, rcx
and rax, rcx
and r15, rcx
and r11, rcx
and r13, rcx
and r10, rcx
and r9, rcx
mov qword [rsp + 0x30], r9
and rdi, rcx
and rbp, rcx
mov qword [rsp + 0x20], rbp
mov rbx, rsi
and rsi, rcx
sar rbx, 0x15
imul rcx, rbx, 0xa2c13
add rcx, r12
imul rbp, rbx, 0x72d18
add rbp, r8
imul r14, rbx, 0x9fb67
add r14, rdx
imul r12, rbx, 0xfffffffffff0c653
add r12, rax
imul r9, rbx, 0x215d1
add r9, r15
imul rbx, rbx, 0xfffffffffff59083
add rbx, r11
mov rax, rcx
sar rax, 0x15
add rax, rbp
mov r8, rax
sar r8, 0x15
add r8, r14
mov rdx, r8
sar rdx, 0x15
add rdx, r12
mov rbp, rdx
sar rbp, 0x15
add rbp, r9
mov r14, rbp
sar r14, 0x15
add r14, rbx
mov r15, r14
sar r15, 0x15
add r15, r13
mov r11, r15
sar r11, 0x15
add r11, r10
mov rbx, r11
sar rbx, 0x15
add rbx, qword [rsp + 0x30]
mov r12, rbx
sar r12, 0x15
add r12, rdi
mov r10, r12
sar r10, 0x15
add r10, qword [rsp + 0x20]
mov r9, r10
sar r9, 0x15
add r9, rsi
mov esi, eax
mov edi, 0x1fffff
and esi, edi
mov rdi, qword [rsp + 0x148]
mov byte [rdi + 0x20], cl
mov byte [rdi + 0x21], ch
mov r13, rdi
shr ecx, 0x10
and ecx, 0x1f
mov edi, esi
shl edi, 5
or edi, ecx
mov byte [r13 + 0x22], dil
mov rcx, rax
shr rcx, 3
mov byte [r13 + 0x23], cl
shr rax, 0xb
mov byte [r13 + 0x24], al
mov eax, r8d
mov edi, 0x1fffff
and eax, edi
shr esi, 0x13
lea ecx, [rsi + rax*4]
mov rsi, r13
mov byte [r13 + 0x25], cl
mov ecx, edx
and ecx, edi
mov r13d, 0x1fffff
shr r8, 6
mov byte [rsi + 0x26], r8b
mov edi, ecx
shl edi, 7
shr eax, 0xe
or eax, edi
mov byte [rsi + 0x27], al
mov rax, rdx
shr rax, 1
mov byte [rsi + 0x28], al
mov eax, ebp
and eax, r13d
shr rdx, 9
mov byte [rsi + 0x29], dl
mov edx, eax
shl edx, 4
shr ecx, 0x11
or ecx, edx
mov byte [rsi + 0x2a], cl
mov rcx, rbp
shr rcx, 4
mov byte [rsi + 0x2b], cl
shr rbp, 0xc
mov byte [rsi + 0x2c], bpl
mov ecx, r14d
and ecx, r13d
shr eax, 0x14
lea eax, [rax + rcx*2]
mov byte [rsi + 0x2d], al
mov eax, r15d
and eax, r13d
shr r14, 7
mov byte [rsi + 0x2e], r14b
mov edx, eax
shl edx, 6
shr ecx, 0xf
or ecx, edx
mov byte [rsi + 0x2f], cl
mov rcx, r15
shr rcx, 2
mov byte [rsi + 0x30], cl
shr r15, 0xa
mov byte [rsi + 0x31], r15b
shr eax, 0x12
lea eax, [rax + r11*8]
mov byte [rsi + 0x32], al
mov rax, r11
shr rax, 5
mov byte [rsi + 0x33], al
mov eax, r12d
and eax, r13d
shr r11, 0xd
mov byte [rsi + 0x34], r11b
mov byte [rsi + 0x35], bl
mov byte [rsi + 0x36], bh
shr ebx, 0x10
and ebx, 0x1f
mov ecx, eax
shl ecx, 5
or ecx, ebx
mov byte [rsi + 0x37], cl
mov rcx, r12
shr rcx, 3
mov byte [rsi + 0x38], cl
shr r12, 0xb
mov byte [rsi + 0x39], r12b
mov ecx, 0x1fffff
and ecx, r10d
shr eax, 0x13
lea eax, [rax + rcx*4]
mov byte [rsi + 0x3a], al
shr r10, 6
mov byte [rsi + 0x3b], r10b
mov eax, r9d
shl eax, 7
shr ecx, 0xe
or ecx, eax
mov byte [rsi + 0x3c], cl
mov rax, r9
shr rax, 1
mov byte [rsi + 0x3d], al
mov rax, r9
shr rax, 9
mov byte [rsi + 0x3e], al
shr r9, 0x11
mov byte [rsi + 0x3f], r9b
mov rcx, qword [rsp + 0x398]
xor rcx, rsp
call fcn.14009d8b0
mov eax, 1
movaps xmm6, xmmword [rsp + 0x3a0]
add rsp, 0x3b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret