Function at 0x140139330
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, 0x3c8
movaps xmmword [rsp + 0x3b0], xmm6
mov rdi, r9
mov r13, r8
mov r12, rdx
mov r14, rcx
mov rax, qword [0x140178028]
xor rax, rsp
mov qword [rsp + 0x3a8], rax
movaps xmm6, xmmword [0x140156180]
lea rsi, [rsp + 0x380]
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
movaps xmmword [rsi - 0x10], xmm6
movaps xmmword [rsi - 0x20], xmm6
lea r15, [rsp + 0x360]
mov edx, 0x20
mov rcx, r9
mov r8, r15
call fcn.14010f0f0
and byte [r15], 0xf8
mov al, byte [r15 + 0x1f]
and al, 0x3f
or al, 0x40
mov byte [r15 + 0x1f], al
lea rbp, [rsp + 0x288]
mov r8d, 0xd8
mov rcx, rbp
mov dl, 0xaa
call fcn.1400aa5c0
mov rcx, rbp
call fcn.14010ff10
mov r8d, 0x20
mov rcx, rbp
mov rdx, rsi
call fcn.140049100
mov rcx, rbp
mov rdx, r12
mov r8, r13
call fcn.140049100
lea rbx, [rsp + 0x240]
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.14010ffa0
mov rcx, rbx
call fcn.1401385a0
lea rsi, [rsp + 0x1a0]
mov r8d, 0xa0
mov rcx, rsi
mov dl, 0xaa
call fcn.1400aa5c0
lea r8, [0x140167910]
mov rcx, rsi
mov rdx, rbx
call fcn.14009a5c0
mov qword [rsp + 0x158], r14
mov rcx, r14
mov rdx, rsi
call fcn.140138230
mov rcx, rbp
call fcn.14010ff10
mov r8d, 0x20
mov rcx, rbp
mov rdx, r14
call fcn.140049100
add rdi, 0x20
mov r8d, 0x20
mov rcx, rbp
mov rdx, rdi
call fcn.140049100
mov rcx, rbp
mov rdx, r12
mov r8, r13
call fcn.140049100
lea rsi, [rsp + 0x160]
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.14010ffa0
mov rcx, rsi
call fcn.1401385a0
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 + 0xf0], 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 rdi, 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 + 0xb8], 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 + 0x50], 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 + 0x60], rcx
movzx eax, byte [rsi + 0xf]
movzx ecx, byte [rsi + 0x10]
shl ecx, 8
or ecx, eax
shl eax, 0x10
or eax, edx
mov r12, rax
movzx eax, byte [rsi + 0x11]
shl eax, 0x10
or eax, ecx
movzx edx, byte [rsi + 0x12]
mov r14d, 0xff
mov rcx, rdx
and rcx, r14
shl edx, 0x18
or edx, eax
mov qword [rsp + 0x58], 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 + 0x68], 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 + 0xa0], 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 + 0x48], 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 + 0x88], 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 + 0xb0], rax
movzx eax, byte [r15 + 3]
shl eax, 8
movzx r13d, byte [r15 + 2]
or eax, r13d
and r13d, 0x1f
shl r13, 0x10
movzx ecx, word [r15]
or r13, 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
shl edx, 0x18
or edx, ecx
mov qword [rsp + 0x78], rdx
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 + 0x28], 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 + 0x38], 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 rsi, 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 + 0x30], rdx
and rax, r14
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 + 0xd8], 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 + 0xa8], 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 + 0xd0], 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 + 0x98], 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 + 0xe0], rcx
mov r9, rbx
movzx eax, byte [rbx + 3]
shl eax, 8
movzx ebx, byte [rbx + 2]
or eax, ebx
and ebx, 0x1f
shl rbx, 0x10
movzx ecx, word [r9]
or rbx, rcx
movzx ecx, byte [r9 + 4]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [r9 + 6]
shl eax, 8
movzx edx, byte [r9 + 5]
or eax, edx
shl edx, 0x18
or edx, ecx
mov qword [rsp + 0xe8], rdx
movzx ecx, byte [r9 + 8]
shl ecx, 8
movzx edx, byte [r9 + 7]
or ecx, edx
mov r11d, edx
shl r11d, 0x10
or r11d, eax
movzx eax, byte [r9 + 9]
shl eax, 0x10
or eax, ecx
movzx edx, byte [r9 + 0xb]
shl edx, 8
movzx ecx, byte [r9 + 0xa]
or edx, ecx
mov r10d, ecx
shl r10d, 0x18
or r10d, eax
movzx ebp, byte [r9 + 0xc]
shl ebp, 0x10
or ebp, edx
movzx r8d, byte [r9 + 0xe]
shl r8d, 8
movzx eax, byte [r9 + 0xd]
or r8d, eax
mov ecx, eax
shl ecx, 0x18
or ecx, ebp
movzx ebp, byte [r9 + 0x10]
shl ebp, 8
movzx edx, byte [r9 + 0xf]
or ebp, edx
shl edx, 0x10
or edx, r8d
movzx r15d, byte [r9 + 0x11]
shl r15d, 0x10
or r15d, ebp
movzx eax, byte [r9 + 0x12]
and r14, rax
shl eax, 0x18
or eax, r15d
mov r8, rax
movzx ebp, byte [r9 + 0x13]
shl rbp, 8
or rbp, r14
movzx eax, byte [r9 + 0x14]
shl rax, 0x10
or rax, rbp
mov qword [rsp + 0x108], rax
movzx ebp, byte [r9 + 0x18]
shl ebp, 8
movzx eax, byte [r9 + 0x17]
mov qword [rsp + 0xf8], rax
or ebp, eax
movzx r14d, byte [r9 + 0x19]
shl r14d, 0x10
or r14d, ebp
movzx eax, byte [r9 + 0x1b]
shl eax, 8
movzx ebp, byte [r9 + 0x1a]
or eax, ebp
shl ebp, 0x18
or ebp, r14d
mov qword [rsp + 0xc0], rbp
movzx ebp, byte [r9 + 0x1d]
shl rbp, 8
movzx r14d, byte [r9 + 0x1c]
or rbp, r14
shl r14d, 0x10
or r14d, eax
shr edi, 5
mov eax, 0x1fffff
and edi, eax
mov qword [rsp + 0x90], rdi
mov rdi, qword [rsp + 0xb8]
shr edi, 2
and edi, eax
mov qword [rsp + 0xb8], rdi
mov rdi, qword [rsp + 0x50]
shr edi, 7
and edi, eax
mov qword [rsp + 0x50], rdi
mov rdi, qword [rsp + 0x60]
shr edi, 4
and edi, eax
mov qword [rsp + 0x60], rdi
shr r12d, 1
and r12d, eax
mov qword [rsp + 0x70], r12
mov rdi, qword [rsp + 0x58]
shr edi, 6
and edi, eax
mov qword [rsp + 0x58], rdi
mov rdi, qword [rsp + 0x48]
shr edi, 5
and edi, eax
mov qword [rsp + 0x48], rdi
mov rdi, qword [rsp + 0x88]
shr edi, 2
and edi, eax
mov qword [rsp + 0x88], rdi
mov r15, qword [rsp + 0x78]
shr r15d, 5
and r15d, eax
mov rdi, qword [rsp + 0x28]
shr edi, 2
and edi, eax
mov qword [rsp + 0x28], rdi
mov rdi, qword [rsp + 0x38]
shr edi, 7
and edi, eax
mov qword [rsp + 0x38], rdi
shr esi, 4
and esi, eax
mov qword [rsp + 0x80], rsi
mov rsi, qword [rsp + 0x40]
shr esi, 1
and esi, eax
mov qword [rsp + 0x40], rsi
mov rsi, qword [rsp + 0x30]
shr esi, 6
and esi, eax
mov qword [rsp + 0x30], rsi
mov rsi, qword [rsp + 0xd0]
shr esi, 5
and esi, eax
mov qword [rsp + 0xd0], rsi
mov rsi, qword [rsp + 0x98]
shr esi, 2
and esi, eax
mov qword [rsp + 0x98], rsi
mov rdi, qword [rsp + 0xe8]
shr edi, 5
and edi, eax
mov qword [rsp + 0xe8], rdi
shr r11d, 2
and r11d, eax
shr r10d, 7
and r10d, eax
shr ecx, 4
and ecx, eax
shr edx, 1
and edx, eax
shr r8d, 6
and r8d, eax
mov qword [rsp + 0x100], r8
mov rsi, qword [rsp + 0xc0]
shr esi, 5
and esi, eax
mov qword [rsp + 0xc0], rsi
shr r14d, 2
and r14d, eax
mov qword [rsp + 0x138], r14
movzx eax, byte [r9 + 0x1e]
shl rax, 0x10
or rax, rbp
movzx esi, byte [r9 + 0x1f]
shl rsi, 0x18
or rsi, rax
mov qword [rsp + 0x140], rsi
mov rax, r13
mov r12, qword [rsp + 0xf0]
imul rax, r12
add rax, rbx
mov qword [rsp + 0x118], rax
mov rax, r15
imul rax, r12
mov rsi, r13
mov rdi, qword [rsp + 0x90]
imul rsi, rdi
add rsi, rax
mov qword [rsp + 0x110], rsi
mov rax, r15
imul rax, rdi
mov r14, rdi
mov rbx, r13
mov rbp, qword [rsp + 0xb8]
imul rbx, rbp
add rbx, rax
mov rdi, qword [rsp + 0x28]
mov rax, rdi
mov rsi, r12
imul rax, r12
add rbx, rax
add rbx, r11
mov qword [rsp + 0x128], rbx
mov rax, r15
imul rax, rbp
mov r9, rbp
mov rbp, r13
mov rbx, qword [rsp + 0x50]
imul rbp, rbx
add rbp, rax
mov rax, rdi
mov r11, rdi
imul rax, r14
mov r12, r14
add rbp, rax
mov rdi, qword [rsp + 0x38]
mov rax, rdi
imul rax, rsi
mov r8, rsi
add rbp, rax
add rbp, r10
mov qword [rsp + 0x150], rbp
mov rax, r15
imul rax, rbx
mov r10, rbx
mov rbp, r13
mov rbx, qword [rsp + 0x60]
imul rbp, rbx
add rbp, rax
mov rax, r11
mov rsi, r11
imul rax, r9
mov r14, r9
add rbp, rax
mov rax, rdi
mov r11, rdi
imul rax, r12
add rbp, rax
mov rdi, qword [rsp + 0x80]
mov rax, rdi
imul rax, r8
add rbp, rax
add rbp, rcx
mov qword [rsp + 0x120], rbp
mov rax, r15
imul rax, rbx
mov r9, rbx
mov rcx, r13
mov rbp, qword [rsp + 0x70]
imul rcx, rbp
add rcx, rax
mov rax, rsi
imul rax, r10
add rcx, rax
mov rax, r11
imul rax, r14
add rcx, rax
mov rax, rdi
imul rax, r12
add rcx, rax
mov rbx, qword [rsp + 0x40]
mov rax, rbx
imul rax, r8
add rcx, rax
add rcx, rdx
mov qword [rsp + 0x148], rcx
mov rax, r15
mov qword [rsp + 0x78], r15
imul rax, rbp
mov rdx, r13
mov rcx, r13
mov rsi, qword [rsp + 0x58]
imul rcx, rsi
add rcx, rax
mov r8, qword [rsp + 0x28]
mov rax, r8
imul rax, r9
add rcx, rax
mov rax, r11
imul rax, r10
add rcx, rax
mov rax, rdi
imul rax, r14
mov rbp, r14
add rcx, rax
mov rax, rbx
mov r14, rbx
imul rax, r12
add rcx, rax
mov rbx, qword [rsp + 0x30]
mov rax, rbx
mov r13, qword [rsp + 0xf0]
imul rax, r13
add rcx, rax
add rcx, qword [rsp + 0x100]
mov qword [rsp + 0x100], rcx
mov rax, qword [rsp + 0x68]
shr rax, 3
mov qword [rsp + 0x68], rax
imul r15, rsi
mov rsi, rdx
mov r9, rdx
mov qword [rsp + 0xc8], rdx
imul rsi, rax
add rsi, r15
mov r10, qword [rsp + 0x70]
imul r8, r10
add rsi, r8
mov rcx, r11
mov r15, r11
mov r11, qword [rsp + 0x60]
imul rcx, r11
add rsi, rcx
mov rcx, rdi
mov rax, qword [rsp + 0x50]
imul rcx, rax
add rsi, rcx
mov rdx, r14
mov rcx, r14
imul rcx, rbp
add rsi, rcx
mov rcx, rbx
mov r14, rbx
imul rcx, r12
add rsi, rcx
mov r12, qword [rsp + 0xd8]
shr r12, 3
mov rcx, r12
imul rcx, r13
add rsi, rcx
mov rcx, qword [rsp + 0x108]
shr rcx, 3
add rsi, rcx
mov qword [rsp + 0x108], rsi
mov r8, qword [rsp + 0x78]
mov rcx, r8
mov rsi, qword [rsp + 0x68]
imul rcx, rsi
mov rbx, r9
mov r9, qword [rsp + 0xa0]
imul rbx, r9
add rbx, rcx
mov rcx, qword [rsp + 0x28]
imul rcx, qword [rsp + 0x58]
add rbx, rcx
imul r15, r10
add rbx, r15
mov rcx, rdi
imul rcx, r11
mov r15, r11
add rbx, rcx
mov rcx, rdx
imul rcx, rax
add rbx, rcx
mov rcx, r14
imul rcx, rbp
mov r14, rbp
add rbx, rcx
mov rax, r12
mov rcx, r12
mov r12, qword [rsp + 0x90]
imul rcx, r12
add rbx, rcx
mov rdx, qword [rsp + 0xa8]
mov rcx, rdx
imul rcx, r13
add rbx, rcx
lea rcx, [rsp + 0x240]
movzx ecx, word [rcx + 0x15]
add rbx, rcx
mov rcx, qword [rsp + 0xf8]
and ecx, 0x1f
shl rcx, 0x10
add rbx, rcx
mov qword [rsp + 0xf8], rbx
imul r8, r9
mov r10, r9
mov rbp, qword [rsp + 0xc8]
mov rbx, rbp
mov r9, qword [rsp + 0x48]
imul rbx, r9
add rbx, r8
mov r8, qword [rsp + 0x28]
mov rcx, r8
imul rcx, rsi
add rbx, rcx
mov r11, qword [rsp + 0x38]
mov rcx, r11
mov rsi, qword [rsp + 0x58]
imul rcx, rsi
add rbx, rcx
mov rcx, rdi
imul rcx, qword [rsp + 0x70]
add rbx, rcx
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
imul rcx, r15
add rbx, rcx
mov rcx, qword [rsp + 0x30]
imul rcx, qword [rsp + 0x50]
add rbx, rcx
mov rcx, rax
mov r15, rax
imul rcx, r14
add rbx, rcx
mov rcx, rdx
mov rax, rdx
imul rcx, r12
add rbx, rcx
mov r14, qword [rsp + 0xd0]
mov rcx, r14
mov r12, r13
imul rcx, r13
add rbx, rcx
add rbx, qword [rsp + 0xc0]
mov qword [rsp + 0x130], rbx
mov r13, qword [rsp + 0x78]
mov rcx, r13
imul rcx, r9
mov rdx, rbp
mov r9, qword [rsp + 0x88]
imul rdx, r9
add rdx, rcx
mov rcx, r8
imul rcx, r10
add rdx, rcx
mov rcx, r11
mov r8, r11
mov r11, qword [rsp + 0x68]
imul rcx, r11
add rdx, rcx
mov rbp, qword [rsp + 0x80]
mov rcx, rbp
imul rcx, rsi
add rdx, rcx
mov rcx, rdi
mov rsi, qword [rsp + 0x70]
imul rcx, rsi
add rdx, rcx
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
imul rcx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, r15
mov rbx, r15
mov r10, qword [rsp + 0x50]
imul rcx, r10
add rdx, rcx
mov rcx, rax
mov rax, qword [rsp + 0xb8]
imul rcx, rax
add rdx, rcx
mov rcx, r14
imul rcx, qword [rsp + 0x90]
add rdx, rcx
mov rcx, qword [rsp + 0x98]
imul rcx, r12
add rdx, rcx
add rdx, qword [rsp + 0x138]
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0xb0]
shr rdx, 7
mov qword [rsp + 0xb0], rdx
mov rcx, r13
imul rcx, r9
mov r13, qword [rsp + 0xc8]
imul r13, rdx
add r13, rcx
mov rdx, qword [rsp + 0x28]
mov rcx, rdx
mov r15, qword [rsp + 0x48]
imul rcx, r15
add r13, rcx
mov r9, qword [rsp + 0xa0]
imul r8, r9
add r13, r8
mov rcx, rbp
mov r8, r11
imul rcx, r11
add r13, rcx
mov rbp, qword [rsp + 0x40]
mov rcx, rbp
imul rcx, qword [rsp + 0x58]
add r13, rcx
mov rcx, rdi
imul rcx, rsi
add r13, rcx
mov rsi, rbx
mov rcx, rbx
imul rcx, qword [rsp + 0x60]
add r13, rcx
mov rcx, qword [rsp + 0xa8]
imul rcx, r10
add r13, rcx
mov rbx, r14
mov rcx, r14
imul rcx, rax
add r13, rcx
mov r14, qword [rsp + 0x98]
mov rcx, r14
imul rcx, qword [rsp + 0x90]
add r13, rcx
mov rcx, qword [rsp + 0xe0]
shr rcx, 7
mov qword [rsp + 0xe0], rcx
imul r12, rcx
add r13, r12
mov rax, qword [rsp + 0x140]
shr rax, 7
add r13, rax
mov qword [rsp + 0xc8], r13
mov rcx, rdx
mov r11, rdx
mov r13, qword [rsp + 0x88]
imul rcx, r13
mov rax, qword [rsp + 0x78]
mov r12, qword [rsp + 0xb0]
imul rax, r12
add rax, rcx
mov rdx, qword [rsp + 0x38]
mov rcx, rdx
imul rcx, r15
add rax, rcx
mov r15, qword [rsp + 0x80]
mov rcx, r15
imul rcx, r9
add rax, rcx
imul rbp, r8
add rax, rbp
mov rcx, rdi
mov r8, qword [rsp + 0x58]
imul rcx, r8
add rax, rcx
mov rdi, rsi
mov qword [rsp + 0xd8], rsi
mov rcx, rsi
mov rsi, qword [rsp + 0x70]
imul rcx, rsi
add rax, rcx
mov r9, qword [rsp + 0xa8]
mov rcx, r9
imul rcx, qword [rsp + 0x60]
add rax, rcx
imul rbx, r10
add rax, rbx
mov rcx, r14
mov rbx, r14
mov r14, qword [rsp + 0xb8]
imul rcx, r14
add rax, rcx
mov rcx, qword [rsp + 0x90]
imul rcx, qword [rsp + 0xe0]
add rax, rcx
mov qword [rsp + 0x78], rax
mov rcx, rdx
imul rcx, r13
mov rax, r11
imul rax, r12
add rax, rcx
mov rbp, r15
mov rcx, r15
mov r11, qword [rsp + 0x48]
imul rcx, r11
add rax, rcx
mov r12, qword [rsp + 0x40]
mov rcx, r12
mov r15, qword [rsp + 0xa0]
imul rcx, r15
add rax, rcx
mov r13, qword [rsp + 0x30]
mov rcx, r13
imul rcx, qword [rsp + 0x68]
add rax, rcx
imul rdi, r8
add rax, rdi
mov rcx, r9
mov r8, r9
imul rcx, rsi
add rax, rcx
mov rdi, qword [rsp + 0xd0]
mov rcx, rdi
mov rsi, qword [rsp + 0x60]
imul rcx, rsi
add rax, rcx
mov rcx, rbx
imul rcx, r10
mov r9, r10
add rax, rcx
mov rcx, r14
mov r14, qword [rsp + 0xe0]
imul rcx, r14
add rax, rcx
mov qword [rsp + 0x28], rax
mov rcx, rbp
imul rcx, qword [rsp + 0x88]
mov rbp, qword [rsp + 0xb0]
imul rdx, rbp
add rdx, rcx
mov rcx, r12
imul rcx, r11
add rdx, rcx
mov r10, r13
mov rcx, r13
imul rcx, r15
add rdx, rcx
mov r11, qword [rsp + 0xd8]
mov rcx, r11
mov r13, qword [rsp + 0x68]
imul rcx, r13
add rdx, rcx
mov r12, r8
mov rcx, r8
imul rcx, qword [rsp + 0x58]
add rdx, rcx
mov r8, rdi
mov rcx, rdi
mov rdi, qword [rsp + 0x70]
imul rcx, rdi
add rdx, rcx
imul rbx, rsi
add rdx, rbx
mov rax, r9
imul rax, r14
mov rsi, r14
add rdx, rax
mov qword [rsp + 0x38], rdx
mov rdx, qword [rsp + 0x40]
mov rcx, rdx
mov r9, qword [rsp + 0x88]
imul rcx, r9
mov rax, qword [rsp + 0x80]
imul rax, rbp
add rax, rcx
mov rcx, r10
mov r14, r10
mov r15, qword [rsp + 0x48]
imul rcx, r15
add rax, rcx
mov rcx, r11
mov rbx, qword [rsp + 0xa0]
imul rcx, rbx
add rax, rcx
mov rcx, r12
mov r10, r13
imul rcx, r13
add rax, rcx
mov rcx, r8
mov r12, r8
mov r13, qword [rsp + 0x58]
imul rcx, r13
add rax, rcx
mov r11, qword [rsp + 0x98]
mov rcx, r11
imul rcx, rdi
add rax, rcx
mov rcx, qword [rsp + 0x60]
imul rcx, rsi
add rax, rcx
mov qword [rsp + 0x80], rax
imul r14, r9
imul rdx, rbp
add rdx, r14
mov rax, qword [rsp + 0xd8]
mov rcx, rax
imul rcx, r15
mov r14, r15
add rdx, rcx
mov r8, qword [rsp + 0xa8]
mov rcx, r8
imul rcx, rbx
add rdx, rcx
mov rcx, r12
imul rcx, r10
add rdx, rcx
mov rdi, r11
mov rcx, r11
imul rcx, r13
add rdx, rcx
mov rcx, qword [rsp + 0x70]
imul rcx, rsi
add rdx, rcx
mov qword [rsp + 0x40], rdx
mov rcx, rax
mov r11, rax
imul rcx, r9
mov r15, qword [rsp + 0x30]
imul r15, rbp
add r15, rcx
mov rax, r8
mov rcx, r8
imul rcx, r14
mov r8, r14
add r15, rcx
mov rcx, r12
mov rdx, qword [rsp + 0xa0]
imul rcx, rdx
add r15, rcx
mov rcx, rdi
mov r14, rdi
imul rcx, r10
add r15, rcx
imul r13, rsi
add r15, r13
mov rcx, rax
imul rcx, r9
imul r11, rbp
add r11, rcx
mov rcx, r12
imul rcx, r8
add r11, rcx
mov rcx, rdi
imul rcx, rdx
add r11, rcx
imul r10, rsi
add r11, r10
mov rcx, r12
imul rcx, r9
mov rdi, rax
imul rdi, rbp
add rdi, rcx
mov rcx, r14
imul rcx, r8
add rdi, rcx
mov rcx, rdx
imul rcx, rsi
add rdi, rcx
mov qword [rsp + 0xa8], rdi
mov rcx, r14
imul rcx, r9
imul r12, rbp
add r12, rcx
imul r8, rsi
add r12, r8
mov r8, r12
mov rdx, r9
imul rdx, rsi
imul r14, rbp
add r14, rdx
imul rsi, rbp
mov rdi, rsi
mov ebp, 0x100000
mov rdx, qword [rsp + 0x118]
lea rcx, [rdx + rbp]
mov rax, rcx
shr rax, 0x15
add rax, qword [rsp + 0x110]
add rax, qword [rsp + 0xe8]
mov qword [rsp + 0x30], rax
and rcx, 0xffffffffffe00000
sub rdx, rcx
mov qword [rsp + 0x118], rdx
mov rcx, qword [rsp + 0x128]
lea rax, [rcx + rbp]
mov qword [rsp + 0xb8], rax
shr rax, 0x15
add rax, qword [rsp + 0x150]
mov rdx, rax
mov rcx, qword [rsp + 0x120]
lea rax, [rcx + rbp]
mov qword [rsp + 0xa0], rax
shr rax, 0x15
add rax, qword [rsp + 0x148]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x100]
lea rax, [rcx + rbp]
mov qword [rsp + 0xd0], rax
shr rax, 0x15
add rax, qword [rsp + 0x108]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0xf8]
add rax, rbp
mov qword [rsp + 0xd8], rax
shr rax, 0x15
add rax, qword [rsp + 0x130]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0xc0]
add rax, rbp
mov qword [rsp + 0xb0], rax
shr rax, 0x15
add rax, qword [rsp + 0xc8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x78]
add rax, rbp
mov qword [rsp + 0x90], rax
shr rax, 0x15
add rax, qword [rsp + 0x28]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x38]
lea r13, [rax + rbp]
mov rax, r13
shr rax, 0x15
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x88], rax
mov rbx, qword [rsp + 0x40]
lea r10, [rbx + rbp]
mov rax, r10
shr rax, 0x15
add rax, r15
mov rsi, rax
lea rax, [r11 + rbp]
mov r9, rax
shr r9, 0x15
add r9, qword [rsp + 0xa8]
mov rcx, 0xffffffffffe00000
and rax, rcx
sub r11, rax
lea rax, [r12 + rbp]
mov r15, rax
shr r15, 0x15
add r15, r14
movabs r14, 0x7fffffffffe00000
and rax, r14
sub r8, rax
lea rcx, [rdi + rbp]
mov r12, rcx
and rcx, r14
sub rdi, rcx
mov rax, qword [rsp + 0x30]
lea rcx, [rax + rbp]
mov qword [rsp + 0x58], rcx
mov r14, 0xffffffffffe00000
and rcx, r14
sub rax, rcx
mov qword [rsp + 0x30], rax
lea rcx, [rdx + rbp]
mov qword [rsp + 0x60], rcx
and rcx, r14
mov rax, 0xffffffffffe00000
sub rdx, rcx
mov qword [rsp + 0x98], rdx
lea rcx, [rsi + rbp]
mov r14, rcx
shr r14, 0x15
add r14, r11
and rcx, rax
sub rsi, rcx
mov qword [rsp + 0xc8], rsi
lea rdx, [r9 + rbp]
mov rcx, rdx
shr rcx, 0x15
add rcx, r8
and rdx, rax
mov r8, 0xffffffffffe00000
sub r9, rdx
lea rdx, [r15 + rbp]
mov rsi, rdx
shr rsi, 0x15
add rsi, rdi
movabs rax, 0x7fffffffffe00000
and rdx, rax
sub r15, rdx
shr r12, 0x15
imul rax, r12, 0xfffffffffff59083
add rax, rbx
and r10, r8
sub rax, r10
mov rdx, qword [rsp + 0x88]
add rdx, rbp
mov qword [rsp + 0xe8], rdx
shr rdx, 0x15
add rax, rdx
mov qword [rsp + 0x40], rax
imul rdx, r12, 0xa2c13
imul rdi, rsi, 0x72d18
add rdi, rdx
imul rdx, r12, 0x72d18
imul rax, rsi, 0x9fb67
add rax, rdx
imul r10, r12, 0x9fb67
imul rdx, rsi, 0xfffffffffff0c653
add rdx, r10
imul r10, r12, 0x215d1
imul rbx, rsi, 0xfffffffffff59083
add rbx, r10
mov qword [rsp + 0x28], rbx
imul r10, rsi, 0xa2c13
imul r11, r15, 0x72d18
add r11, r10
imul r8, r15, 0x9fb67
add r8, rdi
imul r10, r15, 0xfffffffffff0c653
add r10, rax
imul rdi, r15, 0x215d1
add rdi, rdx
imul rax, r12, 0xfffffffffff0c653
add rax, qword [rsp + 0x38]
imul rdx, rsi, 0x215d1
add rax, rdx
imul rdx, r15, 0xfffffffffff59083
add rax, rdx
mov rdx, 0xffffffffffe00000
and r13, rdx
sub rax, r13
mov rdx, qword [rsp + 0x68]
add rdx, rbp
mov qword [rsp + 0xf0], rdx
shr rdx, 0x15
add rax, rdx
imul rdx, r15, 0xa2c13
imul rsi, rcx, 0x72d18
add rsi, rdx
imul rdx, rcx, 0x9fb67
add rdx, r11
imul r11, rcx, 0xfffffffffff0c653
add r11, r8
imul rbx, rcx, 0xfffffffffff59083
add rbx, rdi
mov qword [rsp + 0x110], rbx
imul r8, rcx, 0xa2c13
imul rdi, r9, 0x72d18
add rdi, r8
imul r13, r9, 0x9fb67
add r13, rsi
imul rsi, r9, 0xfffffffffff0c653
add rsi, rdx
imul r12, r9, 0x215d1
add r12, r11
add r10, qword [rsp + 0x78]
imul rcx, rcx, 0x215d1
add r10, rcx
imul rcx, r9, 0xfffffffffff59083
add r10, rcx
mov rcx, qword [rsp + 0x90]
mov r8, 0xffffffffffe00000
and rcx, r8
sub r10, rcx
mov rcx, qword [rsp + 0x50]
lea r15, [rcx + rbp]
mov rcx, r15
shr rcx, 0x15
add r10, rcx
mov rcx, qword [rsp + 0x70]
add rcx, rbp
mov qword [rsp + 0x90], rcx
shr rcx, 0x15
imul rdx, r14, 0xa2c13
add rdx, rcx
add rdx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xd0]
and rcx, r8
mov r8, 0xffffffffffe00000
sub rdx, rcx
mov qword [rsp + 0x38], rdx
imul rcx, r9, 0xa2c13
imul r9, r14, 0x72d18
add r9, rcx
imul rbx, r14, 0x9fb67
add rbx, rdi
mov r11, qword [rsp + 0xe0]
lea rdx, [r11 + rbp]
mov rcx, rdx
shr rcx, 0x15
add rbx, rcx
add rbx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xd8]
and rcx, r8
sub rbx, rcx
mov qword [rsp + 0x80], rbx
imul rcx, r14, 0xfffffffffff0c653
add rcx, r13
imul r13, r14, 0x215d1
add r13, rsi
add r13, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x48]
lea rsi, [r8 + rbp]
mov rdi, rsi
shr rdi, 0x15
add r13, rdi
mov rbx, 0xffffffffffe00000
mov rdi, qword [rsp + 0xb0]
and rdi, rbx
sub r13, rdi
imul rbx, r14, 0xfffffffffff59083
add rbx, r12
add r9, r11
mov rdi, 0xffffffffffe00000
and rdx, rdi
mov r11, 0xffffffffffe00000
sub r9, rdx
mov rdx, qword [rsp + 0x38]
add rdx, rbp
mov qword [rsp + 0xb0], rdx
sar rdx, 0x15
add r9, rdx
mov qword [rsp + 0xa8], r9
add rcx, r8
and rsi, r11
sub rcx, rsi
mov rdx, qword [rsp + 0x80]
lea r14, [rdx + rbp]
mov rdx, r14
sar rdx, 0x15
add rcx, rdx
mov qword [rsp + 0x48], rcx
add rbx, qword [rsp + 0x50]
and r15, r11
sub rbx, r15
mov rdi, r13
add rdi, rbp
mov rdx, rdi
sar rdx, 0x15
add rbx, rdx
mov rcx, rbx
mov r15, qword [rsp + 0x110]
add r15, qword [rsp + 0x68]
mov rdx, qword [rsp + 0xf0]
and rdx, r11
sub r15, rdx
lea rsi, [r10 + rbp]
mov rdx, rsi
sar rdx, 0x15
add r15, rdx
mov rdx, 0xffffffffffe00000
and rsi, rdx
sub r10, rsi
mov rbx, qword [rsp + 0x28]
add rbx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xe8]
and rsi, rdx
mov r8, 0xffffffffffe00000
sub rbx, rsi
lea rsi, [rax + rbp]
mov rdx, rsi
sar rdx, 0x15
add rbx, rdx
mov r9, rbx
and rsi, r8
sub rax, rsi
mov rsi, qword [rsp + 0x40]
lea rdx, [rsi + rbp]
mov rbx, rdx
sar rbx, 0x15
add rbx, qword [rsp + 0xc8]
and rdx, r8
sub rsi, rdx
lea rdx, [rcx + rbp]
mov r11, rdx
sar r11, 0x15
add r11, r10
and rdx, r8
sub rcx, rdx
mov qword [rsp + 0x50], rcx
lea rdx, [r15 + rbp]
mov r10, rdx
sar r10, 0x15
add r10, rax
mov rcx, 0xffffffffffe00000
and rdx, rcx
sub r15, rdx
mov rdx, r9
lea rax, [r9 + rbp]
mov r9, rax
sar r9, 0x15
add r9, rsi
and rax, rcx
mov rcx, 0xffffffffffe00000
sub rdx, rax
mov r8, rdx
mov rax, qword [rsp + 0x48]
add rax, rbp
mov qword [rsp + 0x88], rax
sar rax, 0x15
imul rdx, rbx, 0xfffffffffff59083
add rdx, rax
add rdx, r13
and rdi, rcx
sub rdx, rdi
mov qword [rsp + 0x68], rdx
imul rax, rbx, 0x72d18
imul rcx, r9, 0x9fb67
add rcx, rax
imul rax, rbx, 0x9fb67
imul rsi, r9, 0xfffffffffff0c653
add rsi, rax
imul rdx, rbx, 0xfffffffffff0c653
imul r12, r9, 0x215d1
add r12, rdx
imul rdx, rbx, 0x215d1
imul rdi, r9, 0xfffffffffff59083
add rdi, rdx
mov qword [rsp + 0x40], rdi
mov r13, r8
imul rdi, r8, 0xa2c13
add rdi, qword [rsp + 0x98]
imul rdx, r8, 0xfffffffffff0c653
add rdx, rcx
imul rcx, r8, 0x215d1
add rcx, rsi
mov qword [rsp + 0x78], rcx
imul r8, r8, 0xfffffffffff59083
mov qword [rsp + 0x28], r13
add r8, r12
mov rax, qword [rsp + 0xa8]
add rax, rbp
mov qword [rsp + 0x98], rax
sar rax, 0x15
add r8, rax
add r8, qword [rsp + 0x80]
mov rcx, 0xffffffffffe00000
and r14, rcx
sub r8, r14
add rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0xb0]
and rax, rcx
mov r12, 0xffffffffffe00000
sub rdx, rax
imul rax, r10, 0x215d1
add rdx, rax
imul rax, r15, 0xfffffffffff59083
add rdx, rax
imul rax, r11, 0xa2c13
add rax, qword [rsp + 0x118]
mov qword [rsp + 0x38], rax
imul r14, r11, 0x72d18
add r14, qword [rsp + 0x30]
imul rax, r15, 0xa2c13
add r14, rax
mov rsi, qword [rsp + 0x58]
shr rsi, 0x15
add rsi, qword [rsp + 0x128]
mov rax, qword [rsp + 0xb8]
and rax, r12
sub rsi, rax
imul rax, r11, 0x9fb67
add rsi, rax
imul rax, r10, 0xa2c13
add rsi, rax
imul rax, r15, 0x72d18
add rsi, rax
mov r12, rsi
mov qword [rsp + 0x58], rsi
imul rsi, r11, 0xfffffffffff0c653
add rsi, rdi
imul rax, r10, 0x72d18
add rsi, rax
imul rax, r15, 0x9fb67
add rsi, rax
mov rdi, qword [rsp + 0x60]
shr rdi, 0x15
add rdi, qword [rsp + 0x120]
mov rax, qword [rsp + 0xa0]
mov rcx, 0xffffffffffe00000
and rax, rcx
sub rdi, rax
imul rax, r9, 0xa2c13
add rdi, rax
imul rax, r13, 0x72d18
add rdi, rax
imul rax, r11, 0x215d1
add rdi, rax
imul rax, r10, 0x9fb67
add rdi, rax
imul rax, r15, 0xfffffffffff0c653
add rdi, rax
mov qword [rsp + 0x60], rdi
mov r13, qword [rsp + 0x38]
mov rcx, r13
add rcx, rbp
mov rax, rcx
sar rax, 0x15
add rax, r14
mov qword [rsp + 0x80], rax
mov r14, 0xffffffffffe00000
and rcx, r14
sub r13, rcx
mov qword [rsp + 0x38], r13
lea r13, [r12 + rbp]
mov qword [rsp + 0xa0], r13
sar r13, 0x15
add r13, rsi
imul rsi, rbx, 0xa2c13
add rsi, qword [rsp + 0x70]
mov rax, qword [rsp + 0x90]
and rax, r14
mov r14, 0xffffffffffe00000
sub rsi, rax
imul rax, r9, 0x72d18
add rsi, rax
imul rax, qword [rsp + 0x28], 0x9fb67
add rsi, rax
imul rax, r11, 0xfffffffffff59083
add rsi, rax
imul rax, r10, 0xfffffffffff0c653
add rsi, rax
imul rax, r15, 0x215d1
add rsi, rax
lea r11, [rdi + rbp]
mov rax, r11
sar rax, 0x15
add rsi, rax
mov r15, qword [rsp + 0x78]
add r15, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x98]
and rax, r14
sub r15, rax
imul rax, r10, 0xfffffffffff59083
add r15, rax
lea rdi, [rdx + rbp]
mov rax, rdi
sar rax, 0x15
add r15, rax
mov r10, r15
mov rax, 0xffffffffffe00000
and rdi, rax
sub rdx, rdi
mov rbx, qword [rsp + 0x40]
add rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x88]
and rdi, rax
mov rcx, 0xffffffffffe00000
sub rbx, rdi
lea rdi, [r8 + rbp]
mov rax, rdi
sar rax, 0x15
add rbx, rax
mov r9, rbx
and rdi, rcx
sub r8, rdi
mov rax, qword [rsp + 0x68]
lea rbx, [rax + rbp]
mov rax, rbx
sar rax, 0x15
add rax, qword [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea r15, [rsi + rbp]
mov r12, r15
sar r12, 0x15
add r12, rdx
lea rax, [r10 + rbp]
mov rcx, rax
sar rcx, 0x15
add rcx, r8
mov qword [rsp + 0x50], rcx
mov rcx, 0xffffffffffe00000
and rax, rcx
sub r10, rax
mov qword [rsp + 0x78], r10
lea rax, [r9 + rbp]
mov qword [rsp + 0x30], rax
and rax, rcx
sub r9, rax
mov qword [rsp + 0x40], r9
mov r9, qword [rsp + 0xa0]
and r9, rcx
and r11, rcx
mov qword [rsp + 0x48], r11
and rbx, rcx
mov qword [rsp + 0x70], rbx
mov rdx, qword [rsp + 0x80]
lea rax, [rdx + rbp]
mov r11, rax
and rax, rcx
mov r10, r13
add r10, rbp
mov r14, r10
and r10, rcx
and r15, rcx
mov rdi, 0xffffffffffe00000
mov rbx, qword [rsp + 0x28]
add rbp, rbx
mov rcx, rbp
and rbp, rdi
sub rbx, rbp
mov qword [rsp + 0x28], rbx
sar rcx, 0x15
imul rdi, rcx, 0xa2c13
add rdi, qword [rsp + 0x38]
imul r8, rcx, 0x72d18
add r8, rdx
sub r8, rax
mov rax, rdi
sar rax, 0x15
add r8, rax
imul rbx, rcx, 0x9fb67
add rbx, qword [rsp + 0x58]
sub rbx, r9
sar r11, 0x15
add rbx, r11
mov rax, r8
sar rax, 0x15
add rbx, rax
imul rdx, rcx, 0xfffffffffff0c653
add rdx, r13
sub rdx, r10
mov rax, rbx
sar rax, 0x15
add rdx, rax
imul rax, rcx, 0x215d1
add rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x48]
sar r14, 0x15
add rax, r14
mov rbp, rdx
sar rbp, 0x15
add rax, rbp
imul r9, rcx, 0xfffffffffff59083
add r9, rsi
sub r9, r15
mov rcx, rax
sar rcx, 0x15
add r9, rcx
mov r13, r9
sar r13, 0x15
add r13, r12
mov r14, r13
sar r14, 0x15
add r14, qword [rsp + 0x78]
mov r11, r14
sar r11, 0x15
add r11, qword [rsp + 0x50]
mov r15, r11
sar r15, 0x15
add r15, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
sar rsi, 0x15
add rsi, qword [rsp + 0x68]
mov ecx, 0x1fffff
and rdi, rcx
and r8, rcx
and rbx, rcx
and rdx, rcx
and rax, rcx
and r9, rcx
and r13, rcx
and r14, rcx
and r11, rcx
sub rsi, qword [rsp + 0x70]
mov rbp, r15
sar rbp, 0x15
add rsi, rbp
and r15, rcx
mov r10, rsi
sar r10, 0x15
add r10, qword [rsp + 0x28]
and rsi, rcx
mov qword [rsp + 0x30], rsi
mov rsi, r10
sar rsi, 0x15
and r10, rcx
imul rcx, rsi, 0xa2c13
add rcx, rdi
imul rdi, rsi, 0x72d18
add rdi, r8
imul r8, rsi, 0x9fb67
add r8, rbx
imul rbx, rsi, 0xfffffffffff0c653
add rbx, rdx
imul rdx, rsi, 0x215d1
add rdx, rax
imul r12, rsi, 0xfffffffffff59083
add r12, r9
mov rbp, rcx
sar rbp, 0x15
add rbp, rdi
mov rsi, rbp
sar rsi, 0x15
add rsi, r8
mov rax, rsi
sar rax, 0x15
add rax, rbx
mov rdi, rax
sar rdi, 0x15
add rdi, rdx
mov rdx, rdi
sar rdx, 0x15
add rdx, r12
mov r12, rdx
sar r12, 0x15
add r12, r13
mov r9, r12
sar r9, 0x15
add r9, r14
mov r13, r9
sar r13, 0x15
add r13, r11
mov r11, r13
sar r11, 0x15
add r11, r15
mov r14, r11
sar r14, 0x15
add r14, qword [rsp + 0x30]
mov r8, r14
sar r8, 0x15
add r8, r10
mov rbx, qword [rsp + 0x158]
mov byte [rbx + 0x20], cl
mov byte [rbx + 0x21], ch
mov r10, rbx
shr ecx, 0x10
and ecx, 0x1f
mov ebx, ebp
shl ebx, 5
or ebx, ecx
mov byte [r10 + 0x22], bl
mov rcx, rbp
shr rcx, 3
mov byte [r10 + 0x23], cl
mov rcx, rbp
shr rcx, 0xb
mov byte [r10 + 0x24], cl
shr ebp, 0x13
and ebp, 3
lea ecx, [rbp + rsi*4]
mov rbx, r10
mov byte [r10 + 0x25], cl
mov rcx, rsi
shr rcx, 6
mov byte [r10 + 0x26], cl
mov ecx, eax
shl ecx, 7
shr esi, 0xe
and esi, 0x7f
or esi, ecx
mov byte [r10 + 0x27], sil
mov rcx, rax
shr rcx, 1
mov byte [r10 + 0x28], cl
mov rcx, rax
shr rcx, 9
mov byte [r10 + 0x29], cl
mov ecx, edi
shl ecx, 4
shr eax, 0x11
and eax, 0xf
or eax, ecx
mov byte [r10 + 0x2a], al
mov rax, rdi
shr rax, 4
mov byte [r10 + 0x2b], al
mov rax, rdi
shr rax, 0xc
mov byte [r10 + 0x2c], al
shr edi, 0x14
and edi, 1
lea eax, [rdi + rdx*2]
mov byte [r10 + 0x2d], al
mov rax, rdx
shr rax, 7
mov byte [r10 + 0x2e], al
mov eax, r12d
shl eax, 6
shr edx, 0xf
and edx, 0x3f
or edx, eax
mov byte [r10 + 0x2f], dl
mov rax, r12
shr rax, 2
mov byte [r10 + 0x30], al
mov rax, r12
shr rax, 0xa
mov byte [r10 + 0x31], al
shr r12d, 0x12
and r12d, 7
lea eax, [r12 + r9*8]
mov byte [r10 + 0x32], al
mov rax, r9
shr rax, 5
mov byte [r10 + 0x33], al
shr r9, 0xd
mov byte [r10 + 0x34], r9b
mov rax, r13
mov byte [r10 + 0x35], al
mov byte [rbx + 0x36], ah
shr eax, 0x10
and eax, 0x1f
mov rcx, rax
mov eax, r11d
shl eax, 5
or eax, ecx
mov byte [r10 + 0x37], al
mov rax, r11
shr rax, 3
mov byte [r10 + 0x38], al
mov rax, r11
shr rax, 0xb
mov byte [r10 + 0x39], al
shr r11d, 0x13
and r11d, 3
lea eax, [r11 + r14*4]
mov byte [r10 + 0x3a], al
mov rax, r14
shr rax, 6
mov byte [r10 + 0x3b], al
mov eax, r8d
shl eax, 7
shr r14d, 0xe
and r14d, 0x7f
or r14d, eax
mov byte [r10 + 0x3c], r14b
mov rax, r8
shr rax, 1
mov byte [r10 + 0x3d], al
mov rax, r8
shr rax, 9
mov byte [r10 + 0x3e], al
shr r8, 0x11
mov byte [r10 + 0x3f], r8b
mov rcx, qword [rsp + 0x3a8]
xor rcx, rsp
call fcn.1400a8490
mov eax, 1
movaps xmm6, xmmword [rsp + 0x3b0]
add rsp, 0x3c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret