Function at 0x140233bf0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xae8
movaps xmmword [rsp + 0xad0], xmm7
movaps xmmword [rsp + 0xac0], xmm6
mov rsi, r8
mov qword [rsp + 0x1e8], rdx
mov qword [rsp + 0x1d8], rcx
mov rax, qword [0x140418038]
xor rax, rsp
mov qword [rsp + 0xab8], rax
lea rcx, [rsp + 0x3b0]
mov r8d, 0x708
mov dl, 0xaa
call fcn.140244560
mov ebp, 0x70
movabs r11, 0xaaaaaaaaaaaaaaaa
movaps xmm6, xmmword [0x1403aa440]
mov qword [rsp + 0x100], rbp
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x2b0], r11
movaps xmmword [rsp + 0x2a0], xmm6
movaps xmmword [rsp + 0x290], xmm6
mov qword [rsp + 0x210], r11
movaps xmmword [rsp + 0x200], xmm6
movaps xmmword [rsp + 0x1f0], xmm6
lea rcx, [rsp + 0x290]
mov rdx, rsi
call fcn.14019b860
lea rdx, [rsi + 0x20]
lea rcx, [rsp + 0x1f0]
call fcn.14019b860
mov rcx, qword [rsp + 0x210]
mov qword [rsp + 0x28], rcx
mov r10, qword [rsp + 0x2b0]
lea rax, [rcx + rcx*8]
lea rcx, [rcx + rax*2]
mov rax, rcx
mul r10
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rdx
mov r12, qword [rsp + 0x208]
lea rax, [r12 + r12*8]
lea r8, [r12 + rax*2]
mov qword [rsp + 0x40], r12
mov rax, r10
mul r8
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
mov rdx, qword [rsp + 0x200]
lea rax, [rdx + rdx*8]
lea r9, [rdx + rax*2]
mov rbx, rdx
mov rax, r10
mul r9
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rdx
mov rsi, qword [rsp + 0x1f8]
lea rax, [rsi + rsi*8]
lea rdx, [rsi + rax*2]
mov r14, rsi
mov rax, r10
mov qword [rsp + 0x38], r10
mul rdx
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rdx
mov rsi, qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov rax, rcx
mul rsi
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xa8], rax
mov rax, rsi
mul r8
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x178], rax
mov rax, rsi
mov r15, rsi
mul r9
mov qword [rsp + 0x130], rax
mov rsi, rdx
mov r13, qword [rsp + 0x2a0]
mov rax, rcx
mul r13
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x170], rax
mov rax, r8
mul r13
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x120], rdx
mov r11, qword [rsp + 0x298]
mov rax, rcx
mul r11
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x1f0]
mov rax, r10
mul rcx
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xe0], rax
mov rax, r15
mul r14
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xc0], rax
mov rax, r15
mov rbp, r15
mov qword [rsp + 0x1a0], r15
mov r10, rcx
mov qword [rsp + 0x30], rcx
mul rcx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rdx
mov rax, r13
mul rbx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xa0], rax
mov rax, r13
mul r14
mov r15, r14
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov rdi, qword [rsp + 0x290]
movabs rcx, 0xffffffffffffe
lea rax, [rcx + r10]
sub rax, rdi
add rax, 0xffffffffffffffdc
mov qword [rsp + 0x1d0], rax
mov rax, r13
mov qword [rsp + 0x1a8], r13
mul r10
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x158], rdx
mov rax, r12
mov r14, r11
mov qword [rsp + 0x198], r11
mul r11
mov r9, rax
mov r10, rdx
lea rax, [r15 + rcx]
sub rax, r11
mov qword [rsp + 0x1c8], rax
mov rax, rbx
mov r11, rbx
mul r14
mov rbx, rax
mov r8, rdx
mov rax, r14
mul r15
mov r12, r15
mov qword [rsp + 0x188], r15
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x118], rdx
lea rax, [r11 + rcx]
mov rcx, r11
mov qword [rsp + 0x190], r11
sub rax, r13
mov qword [rsp + 0x1c0], rax
mov rax, r14
mov r15, qword [rsp + 0x30]
mul r15
mov r13, rax
mov qword [rsp + 0x1e0], rdx
mov r11, qword [rsp + 0x28]
mov rax, r11
mov r14, rdi
mov qword [rsp + 0x180], rdi
mul rdi
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rdx
mov rax, qword [rsp + 0x40]
movabs rdx, 0xffffffffffffe
add rdx, rax
sub rdx, rbp
mov qword [rsp + 0x1b8], rdx
mul rdi
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x150], rdx
mov rax, rcx
mul rdi
mov rbp, rax
mov rdi, rdx
movabs rax, 0xffffffffffffe
add rax, r11
sub rax, qword [rsp + 0x38]
mov qword [rsp + 0x1b0], rax
mov rax, r12
mul r14
mov rcx, rax
mov r11, rdx
mov rax, r14
mul r15
mov r14, rax
add r14, qword [rsp + 0x130]
adc rsi, rdx
add r14, qword [rsp + 0x110]
adc rsi, qword [rsp + 0x120]
add r14, qword [rsp + 0x160]
adc rsi, qword [rsp + 0x168]
add r14, qword [rsp + 0x128]
adc rsi, qword [rsp + 0x138]
shld rsi, r14, 0xd
movabs rax, 0x7ffffffffffff
and r14, rax
add rcx, r13
adc r11, qword [rsp + 0x1e0]
add rcx, qword [rsp + 0x178]
adc r11, qword [rsp + 0x58]
add rcx, qword [rsp + 0x80]
adc r11, qword [rsp + 0x88]
add rcx, qword [rsp + 0x170]
adc r11, qword [rsp + 0x50]
add rcx, rsi
adc r11, 0
shld r11, rcx, 0xd
movabs rax, 0x7ffffffffffff
and rcx, rax
add rbp, qword [rsp + 0x108]
adc rdi, qword [rsp + 0x118]
add rbp, qword [rsp + 0x148]
adc rdi, qword [rsp + 0x158]
add rbp, qword [rsp + 0xd0]
adc rdi, qword [rsp + 0xd8]
add rbp, qword [rsp + 0xa8]
adc rdi, qword [rsp + 0xb8]
add rbp, r11
adc rdi, 0
shld rdi, rbp, 0xd
movabs rax, 0x7ffffffffffff
and rbp, rax
add rbx, qword [rsp + 0x60]
adc r8, qword [rsp + 0x68]
add rbx, qword [rsp + 0x140]
adc r8, qword [rsp + 0x150]
add rbx, qword [rsp + 0x90]
adc r8, qword [rsp + 0x98]
add rbx, qword [rsp + 0xf0]
adc r8, qword [rsp + 0xf8]
add rbx, rdi
adc r8, 0
shld r8, rbx, 0xd
add r9, qword [rsp + 0xa0]
adc r10, qword [rsp + 0xb0]
add r9, qword [rsp + 0xc0]
adc r10, qword [rsp + 0xc8]
add r9, qword [rsp + 0x70]
adc r10, qword [rsp + 0x78]
add r9, qword [rsp + 0xe0]
adc r10, qword [rsp + 0xe8]
add r9, r8
adc r10, 0
shld r10, r9, 0xd
lea rax, [r10 + r10*8]
lea rax, [r10 + rax*2]
add r14, rax
mov r15, r14
shr r15, 0x33
add r15, rcx
movabs rax, 0x7ffffffffffff
and r9, rax
mov rax, r9
movabs r10, 0x2ac822b5a729ed
mul r10
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rdx
mov rdi, r15
shr rdi, 0x33
add rdi, rbp
mov rax, r9
movabs r13, 0x7a9372c9c903d5
mul r13
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x90], rdx
mov rax, r9
movabs r8, 0x48621a40428616
mul r8
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x88], rax
mov rax, r9
movabs rcx, 0x3ef5f8c52e700e
mul rcx
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rdx
movabs rax, 0x7ffffffffffff
and rbx, rax
mov rax, rbx
mul r10
mov rcx, rax
mov r11, rdx
mov rax, rbx
mul r13
mov rbp, rdx
mov rsi, rax
mov rax, rbx
mul r8
mov qword [rsp + 0x108], rax
mov r12, rdx
movabs rax, 0x7ffffffffffff
and r15, rax
mov rax, rdi
mul r10
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov rax, rdi
mul r13
mov qword [rsp + 0x148], rdx
mov qword [rsp + 0x140], rax
mov rax, r15
mul r10
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x130], rax
mov rax, r9
movabs r8, 0x69b9426b2f159
mul r8
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe8], rdx
mov rax, rbx
movabs rdx, 0x35050762add7a
mul rdx
mov r10, rdx
mov r9, rax
mov rax, rbx
mul r8
mov r13, rdx
mov rbx, rax
mov rax, rdi
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xe0], rdx
mov rax, rdi
movabs r8, 0x35050762add7a
mul r8
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xb0], rax
mov rax, rdi
movabs rdi, 0x69b9426b2f159
mul rdi
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], rax
mov rax, r15
movabs rdx, 0x6738cc7407977
mul rdx
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rdx
mov rax, r15
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], rax
mov rax, r15
mul r8
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rdx
movabs rax, 0x7ffffffffffff
and r14, rax
mov rax, r15
mul rdi
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rdx
mov rax, r14
movabs rdx, 0x2406d9dc56dff
mul rdx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xa0], rax
mov rax, r14
movabs rdx, 0x6738cc7407977
mul rdx
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x170], rax
mov rax, r14
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rdx
mov rax, r14
mul r8
mov r15, rdx
mov rdi, rax
mov rax, r14
movabs rdx, 0x69b9426b2f159
mul rdx
mov r8, qword [rsp + 0x108]
add r8, qword [rsp + 0x160]
adc r12, qword [rsp + 0x168]
add r8, rax
adc r12, rdx
add r8, qword [rsp + 0x130]
adc r12, qword [rsp + 0x138]
add r8, qword [rsp + 0x140]
adc r12, qword [rsp + 0x148]
mov rdx, r12
shld r12, r8, 0xd
shr rdx, 0x33
movabs rax, 0x7ffffffffffff
and r8, rax
add rcx, qword [rsp + 0x80]
adc r11, qword [rsp + 0x90]
add rsi, qword [rsp + 0x88]
adc rbp, qword [rsp + 0x98]
add rsi, rdi
adc rbp, r15
add rsi, qword [rsp + 0x110]
adc rbp, qword [rsp + 0x118]
add rsi, qword [rsp + 0x60]
adc rbp, qword [rsp + 0x68]
mov rax, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x30]
add rax, rdi
mov qword [rsp + 0x30], rax
add rsi, r12
adc rbp, rdx
mov rdi, rbp
shld rbp, rsi, 0xd
movabs rdx, 0x7ffffffffffff
and rsi, rdx
shr rdi, 0x33
add rcx, qword [rsp + 0x120]
adc r11, qword [rsp + 0x128]
mov rax, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x188]
lea r14, [rax + rdx]
add rcx, qword [rsp + 0x150]
adc r11, qword [rsp + 0x158]
mov rax, qword [rsp + 0x1a8]
mov rdx, qword [rsp + 0x190]
lea r15, [rax + rdx]
add rcx, qword [rsp + 0x50]
adc r11, qword [rsp + 0x58]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x1a0]
add rdx, rax
add rcx, rbp
mov rbp, qword [rsp + 0x100]
adc r11, rdi
mov rdi, r11
shld r11, rcx, 0xd
movabs r12, 0x7ffffffffffff
and rcx, r12
shr rdi, 0x33
add rbx, qword [rsp + 0xf0]
adc r13, qword [rsp + 0xf8]
mov r12, qword [rsp + 0x28]
mov rax, qword [rsp + 0x38]
add r12, rax
add rbx, qword [rsp + 0x170]
adc r13, qword [rsp + 0x178]
mov rax, qword [rsp + 0x30]
mov qword [rsp + rbp + 0x340], rax
add rbx, qword [rsp + 0x70]
adc r13, qword [rsp + 0x78]
mov qword [rsp + rbp + 0x348], r14
add rbx, qword [rsp + 0xb0]
adc r13, qword [rsp + 0xb8]
mov qword [rsp + rbp + 0x350], r15
add rbx, r11
adc r13, rdi
mov rax, r13
shld r13, rbx, 0xd
movabs r11, 0x7ffffffffffff
and rbx, r11
movabs r11, 0xaaaaaaaaaaaaaaaa
shr rax, 0x33
add r9, qword [rsp + 0xd8]
adc r10, qword [rsp + 0xe8]
mov qword [rsp + rbp + 0x358], rdx
add r9, qword [rsp + 0xa0]
adc r10, qword [rsp + 0xa8]
mov qword [rsp + rbp + 0x360], r12
add r9, qword [rsp + 0xc0]
adc r10, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x1d0]
mov qword [rsp + rbp + 0x368], rdx
add r9, qword [rsp + 0xd0]
adc r10, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x1c8]
mov qword [rsp + rbp + 0x370], rdx
add r9, r13
adc r10, rax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + rbp + 0x378], rax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + rbp + 0x380], rax
shld r10, r9, 0xd
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + rbp + 0x388], rax
lea rax, [r10 + r10*8]
lea rax, [r10 + rax*2]
add rax, r8
mov rdx, rax
shr rdx, 0x33
add rdx, rsi
mov rsi, qword [rsp + 0x48]
movabs r10, 0x7ffffffffffff
mov r8, rdx
shr r8, 0x33
add r8, rcx
and rax, r10
mov qword [rsp + rbp + 0x390], rax
and rdx, r10
mov qword [rsp + rbp + 0x398], rdx
mov qword [rsp + rbp + 0x3a0], r8
mov qword [rsp + rbp + 0x3a8], rbx
and r9, r10
mov qword [rsp + rbp + 0x3b0], r9
add rbp, 0x78
add rsi, 0x40
cmp rbp, 0x778
jne 0x140233c63
xorps xmm7, xmm7
mov rcx, qword [rsp + 0x1d8]
movups xmmword [rcx + 0x20], xmm7
movups xmmword [rcx + 0x40], xmm7
movups xmmword [rcx + 0x30], xmm7
movups xmmword [rcx + 0x10], xmm7
movups xmmword [rcx], xmm7
mov eax, 1
mov qword [rcx + 0x28], rax
lea rdx, [rcx + 0x50]
mov qword [rsp + 0x50], rdx
movups xmmword [rcx + 0x58], xmm7
movups xmmword [rcx + 0x68], xmm7
mov qword [rcx + 0x50], rax
movups xmmword [rcx + 0x78], xmm7
movups xmmword [rcx + 0x88], xmm7
mov qword [rcx + 0x98], 0
mov ecx, 0x3f
mov eax, ecx
shr rax, 3
mov r10, qword [rsp + 0x1e8]
movzx edx, byte [r10 + rax]
mov dword [rsp + 0x1d0], ecx
and cl, 7
movzx ecx, cl
xor r8d, r8d
bt edx, ecx
setb r8b
movzx edx, byte [r10 + rax + 8]
shr rdx, cl
movzx r9d, byte [r10 + rax + 0x10]
shr r9, cl
and edx, 1
lea rdx, [r8 + rdx*2]
and r9d, 1
movzx eax, byte [r10 + rax + 0x18]
shr rax, cl
lea rcx, [rdx + r9*4]
and eax, 1
lea rax, [rcx + rax*8]
mov qword [rsp + 0x100], rax
lea rax, [rsp + 0x360]
mov qword [rax + 0x20], r11
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
movups xmmword [rax - 0x10], xmm7
movups xmmword [rax - 0x20], xmm7
mov qword [rsp + 0x338], 1
movups xmmword [rax + 0x38], xmm7
mov qword [rax + 0x48], 0
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x30], rax
lea r11, [rsp + 0x420]
mov eax, 1
mov edi, 0
xor r14d, r14d
xor r12d, r12d
xor r9d, r9d
xor r10d, r10d
xor esi, esi
xor ebx, ebx
xor r15d, r15d
xor r13d, r13d
mov ebp, 1
xor r8d, r8d
mov ecx, 1
mov qword [rsp + 0x38], rcx
nop dword [rax + rax]
mov qword [rsp + 0x28], r11
mov rdx, rax
mov rcx, qword [rsp + 0x38]
xor ecx, dword [rsp + 0x100]
shl rcx, 0x20
movabs rax, 0xffffffff00000000
add rcx, rax
sar rcx, 0x3f
mov rax, qword [r11 - 0x70]
xor rax, rdx
and rax, rcx
xor rax, rdx
mov rdx, r12
mov r12, qword [r11 - 0x68]
xor r12, rdx
and r12, rcx
xor r12, rdx
mov rdx, r14
mov r14, qword [r11 - 0x60]
xor r14, rdx
and r14, rcx
xor r14, rdx
mov rdx, rdi
mov rdi, qword [r11 - 0x58]
xor rdi, rdx
and rdi, rcx
xor rdi, rdx
mov rdx, r8
mov r8, qword [r11 - 0x50]
xor r8, rdx
and r8, rcx
xor r8, rdx
mov rdx, rbp
mov rbp, qword [r11 - 0x48]
xor rbp, rdx
and rbp, rcx
xor rbp, rdx
mov rdx, r13
mov r13, qword [r11 - 0x40]
xor r13, rdx
and r13, rcx
xor r13, rdx
mov rdx, r15
mov r15, qword [r11 - 0x38]
xor r15, rdx
and r15, rcx
xor r15, rdx
mov rdx, rbx
mov rbx, qword [r11 - 0x30]
xor rbx, rdx
and rbx, rcx
xor rbx, rdx
mov rdx, rsi
mov rsi, qword [r11 - 0x28]
xor rsi, rdx
and rsi, rcx
xor rsi, rdx
mov rdx, r10
mov r10, qword [r11 - 0x20]
xor r10, rdx
and r10, rcx
xor r10, rdx
mov rdx, r9
mov r9, qword [r11 - 0x18]
xor r9, rdx
and r9, rcx
xor r9, rdx
mov r11, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x28]
mov rdx, qword [rdx - 0x10]
xor rdx, r11
and rdx, rcx
xor rdx, r11
mov qword [rsp + 0x48], rdx
mov r11, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
mov rdx, qword [rdx - 8]
xor rdx, r11
and rdx, rcx
xor rdx, r11
mov qword [rsp + 0x40], rdx
mov rdx, qword [rsp + 0x30]
mov r11, qword [rsp + 0x28]
mov r11, qword [r11]
xor r11, rdx
and r11, rcx
xor r11, rdx
mov qword [rsp + 0x30], r11
mov r11, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x38]
inc rcx
add r11, 0x78
mov qword [rsp + 0x38], rcx
cmp rcx, 0x10
jne 0x140234870
mov qword [rsp + 0x338], rax
mov qword [rsp + 0x340], r12
mov qword [rsp + 0x348], r14
mov qword [rsp + 0x350], rdi
mov qword [rsp + 0x358], r8
mov qword [rsp + 0x360], rbp
mov qword [rsp + 0x368], r13
mov qword [rsp + 0x370], r15
mov qword [rsp + 0x378], rbx
mov qword [rsp + 0x380], rsi
mov qword [rsp + 0x388], r10
mov qword [rsp + 0x390], r9
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x3a8], rax
mov r8d, 0xa0
lea rcx, [rsp + 0x1f0]
mov dl, 0xaa
call fcn.140244560
mov rbx, qword [rsp + 0x1d8]
mov rax, qword [rbx + 0x28]
mov r10, qword [rbx]
mov rsi, qword [rbx + 8]
lea rcx, [r10 + rax]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbx + 0x30]
lea rdx, [rsi + rcx]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rbx + 0x38]
mov r11, qword [rbx + 0x10]
lea r14, [r11 + rdx]
mov r8, qword [rbx + 0x40]
mov r15, qword [rbx + 0x18]
lea r12, [r15 + r8]
mov r9, qword [rbx + 0x48]
mov r13, qword [rbx + 0x20]
lea rbp, [r13 + r9]
mov rdi, qword [rsp + 0x28]
mov qword [rsp + 0x290], rdi
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0x298], rdi
mov qword [rsp + 0x2a0], r14
mov qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin], r12
mov qword [rsp + 0x2b0], rbp
movabs rdi, 0xffffffffffffe
add rax, rdi
sub rax, r10
add rax, 0xffffffffffffffdc
add rcx, rdi
sub rcx, rsi
add rdx, rdi
sub rdx, r11
add r8, rdi
sub r8, r15
add r9, rdi
sub r9, r13
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2c8], rdx
mov qword [rsp + 0x2d0], r8
mov qword [rsp + 0x2d8], r9
mov rax, qword [rsp + 0x50]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rcx, [rsp + 0x2e0]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rax + 0x20]
mov qword [rcx + 0x20], rax
mov r10, qword [rbx + 0x98]
mov rax, r10
movabs r14, 0x2ac822b5a729ed
mul r14
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x38], rax
mov rax, r10
movabs rsi, 0x7a9372c9c903d5
mul rsi
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x198], rax
mov rax, r10
movabs r9, 0x48621a40428616
mul r9
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x190], rax
mov rax, r10
movabs rcx, 0x3ef5f8c52e700e
mul rcx
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rdx
mov r11, qword [rbx + 0x90]
mov rax, r11
mul r14
mov rbp, rdx
mov rcx, rax
mov rax, r11
mul rsi
mov r15, rdx
mov r8, rax
mov rax, r11
mul r9
mov r9, rax
mov r13, rdx
mov rdi, qword [rbx + 0x88]
mov rax, rdi
mul r14
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xe0], rax
mov rax, rdi
mul rsi
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], rdx
mov rsi, qword [rbx + 0x80]
mov rax, rsi
mul r14
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x80], rax
mov rax, r10
movabs r14, 0x69b9426b2f159
mul r14
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x30], rax
mov rax, r11
movabs rdx, 0x35050762add7a
mul rdx
mov r12, rdx
mov r10, rax
mov rax, r11
mul r14
mov r14, rdx
mov r11, rax
mov rax, rdi
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x100], rax
mov rax, rdi
movabs rdx, 0x35050762add7a
mul rdx
mov qword [rsp + 0x188], rdx
mov qword [rsp + 0x180], rax
mov rax, rdi
movabs rdx, 0x69b9426b2f159
mul rdx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xb0], rax
mov rax, rsi
movabs rdx, 0x6738cc7407977
mul rdx
mov qword [rsp + 0x1c8], rdx
mov qword [rsp + 0x1c0], rax
mov rax, rsi
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0xf0], rax
mov rax, rsi
movabs rdi, 0x35050762add7a
mul rdi
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xa0], rax
mov rax, rsi
movabs rdx, 0x69b9426b2f159
mul rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov rsi, qword [rbx + 0x78]
mov rax, rsi
movabs rdx, 0x2406d9dc56dff
mul rdx
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1b0], rax
mov rax, rsi
movabs rdx, 0x6738cc7407977
mul rdx
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0xd0], rax
mov rax, rsi
movabs rdx, 0x3cf44c0038052
mul rdx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], rax
mov rax, rsi
mul rdi
mov qword [rsp + 0x58], rdx
mov rdi, rax
mov rax, rsi
movabs rdx, 0x69b9426b2f159
mul rdx
add r9, qword [rsp + 0xc0]
adc r13, qword [rsp + 0xc8]
add r9, qword [rsp + 0x88]
adc r13, qword [rsp + 0x98]
add r9, qword [rsp + 0x80]
adc r13, qword [rsp + 0x90]
add r9, rax
adc r13, rdx
shld r13, r9, 0xd
movabs rsi, 0x7ffffffffffff
and r9, rsi
add rcx, qword [rsp + 0x198]
adc rbp, qword [rsp + 0x1a8]
add r8, qword [rsp + 0x190]
adc r15, qword [rsp + 0x1a0]
add r8, qword [rsp + 0xe0]
adc r15, qword [rsp + 0xe8]
add r8, qword [rsp + 0x60]
adc r15, qword [rsp + 0x68]
add r8, rdi
adc r15, qword [rsp + 0x58]
add r8, r13
adc r15, 0
shld r15, r8, 0xd
and r8, rsi
add rcx, qword [rsp + 0xb0]
adc rbp, qword [rsp + 0xb8]
add rcx, qword [rsp + 0xa0]
adc rbp, qword [rsp + 0xa8]
add rcx, qword [rsp + 0x70]
adc rbp, qword [rsp + 0x78]
add rcx, r15
adc rbp, 0
shld rbp, rcx, 0xd
and rcx, rsi
add r11, qword [rsp + 0x38]
adc r14, qword [rsp + 0x28]
add r11, qword [rsp + 0x180]
adc r14, qword [rsp + 0x188]
add r11, qword [rsp + 0xf0]
adc r14, qword [rsp + 0xf8]
add r11, qword [rsp + 0xd0]
adc r14, qword [rsp + 0xd8]
add r11, rbp
adc r14, 0
shld r14, r11, 0xd
and r11, rsi
add r10, qword [rsp + 0x30]
adc r12, qword [rsp + 0x40]
add r10, qword [rsp + 0x100]
adc r12, qword [rsp + 0x48]
add r10, qword [rsp + 0x1c0]
adc r12, qword [rsp + 0x1c8]
add r10, qword [rsp + 0x1b0]
adc r12, qword [rsp + 0x1b8]
add r10, r14
adc r12, 0
shld r12, r10, 0xd
lea rax, [r12 + r12*8]
lea rax, [r12 + rax*2]
add rax, r9
mov rdx, rax
shr rdx, 0x33
add rdx, r8
mov r8, rdx
shr r8, 0x33
add r8, rcx
and rax, rsi
mov qword [rsp + 0x308], rax
and rdx, rsi
mov qword [rsp + 0x310], rdx
mov qword [rsp + 0x318], r8
mov qword [rsp + 0x320], r11
and r10, rsi
mov qword [rsp + 0x328], r10
lea rsi, [rsp + 0x1f0]
mov rcx, rsi
mov rdx, rbx
lea r8, [rsp + 0x290]
call fcn.1402328e0
mov rcx, rbx
mov rdx, rsi
call fcn.140231950
mov rcx, rsi
mov rdx, rbx
lea r8, [rsp + 0x338]
call fcn.140235030
mov rcx, rbx
mov rdx, rsi
call fcn.140231950
mov ecx, dword [rsp + 0x1d0]
dec ecx
cmp ecx, 0x40
movabs r11, 0xaaaaaaaaaaaaaaaa
jb 0x140234771
mov rcx, qword [rsp + 0xab8]
xor rcx, rsp
call fcn.140242430
movaps xmm6, xmmword [rsp + 0xac0]
movaps xmm7, xmmword [rsp + 0xad0]
add rsp, 0xae8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret