Function at 0x2166ba110
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1a8
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x140], xmm7
movaps xmmword [rsp + 0x150], xmm8
movaps xmmword [rsp + 0x160], xmm9
movaps xmmword [rsp + 0x170], xmm10
movaps xmmword [rsp + 0x180], xmm11
movaps xmmword [rsp + 0x190], xmm12
movabs r10, 0xff00ff00ff00ff00
mov r8d, dword [rdx]
mov eax, dword [rdx + 8]
mov qword [rsp + 0x208], r9
mov r9d, dword [rdx + 0xc]
lea rdi, [rsp + 0xf0]
mov qword [rsp + 0x1f0], rcx
mov ecx, dword [rdx + 4]
mov edx, eax
mov dword [rsp + 0xb8], eax
mov eax, r9d
mov dword [rsp + 0xbc], r9d
mov r9, r8
shl r9, 0x10
mov dword [rsp + 0xb0], r8d
or r8, r9
mov r9, rcx
mov dword [rsp + 0xb4], ecx
shl r9, 0x10
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xf8], 0
or rcx, r9
mov r9, rdx
mov qword [rsp + 0x100], 0
shl r9, 0x10
mov qword [rsp + 0x108], 0
or rdx, r9
mov r9, rax
mov qword [rsp + 0x118], 0
shl r9, 0x10
mov qword [rsp + 0x120], 0
or rax, r9
movabs r9, 0xffff0000ffff
and r8, r9
and rcx, r9
and rdx, r9
and rax, r9
mov r9, r8
mov r11, rax
mov qword [rsp + 0x128], 0
shl r9, 8
shl r11, 8
mov qword [rsp + 0xc0], 0
or r8, r9
mov r9, rcx
or rax, r11
mov qword [rsp + 0xc8], 0
shl r9, 8
shl rax, 8
mov qword [rsp + 0xd0], 0
or rcx, r9
mov r9, rdx
and rax, r10
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], 0
shl r9, 8
mov qword [rsp + 0xe8], 0
or rdx, r9
movabs r9, 0xff00ff00ff00ff
shl rdx, 8
and r8, r9
and rcx, r9
and rdx, r10
or rax, rcx
mov rcx, rdi
or rdx, r8
mov qword [rsp + 0x110], rax
mov qword [rsp + 0xf0], rdx
call fcn.2166b8f10
mov rax, qword [rsp + 0x1f0]
mov r8, qword [rax + 0x3c0]
mov rax, r8
lea rsi, [r8 - 1]
shl rax, 6
add rax, qword [rsp + 0x1f0]
mov qword [rsp + 0xa0], rsi
movdqu xmm3, xmmword [rax]
movdqu xmm2, xmmword [rax + 0x10]
pxor xmm3, xmmword [rsp + 0xf0]
movdqu xmm0, xmmword [rax + 0x30]
pxor xmm2, xmmword [rsp + 0x100]
movdqu xmm1, xmmword [rax + 0x20]
movhlps xmm6, xmm3
movq r15, xmm3
pxor xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0xf0], xmm3
pxor xmm1, xmmword [rsp + 0x110]
movq rdi, xmm6
movhlps xmm6, xmm2
movaps xmmword [rsp + 0x100], xmm2
movhlps xmm7, xmm0
movq r14, xmm6
movq rdx, xmm0
movaps xmmword [rsp + 0x120], xmm0
movhlps xmm6, xmm1
movq r10, xmm1
movq r11, xmm7
movaps xmmword [rsp + 0x110], xmm1
test rsi, rsi
jle 0x2166bac87
mov qword [rsp + 0x48], rax
movq rbx, xmm2
movq r8, xmm6
nop
movabs rsi, 0xff0000000000
mov rax, r15
mov rcx, r15
movabs r9, 0xff00000000
shr rax, 0xc
shl rcx, 4
movabs rbp, 0xf000000000000000
movabs r12, 0xfff000000000000
and ecx, 0xfff00000
and eax, 0xf0000
or rax, rcx
movzx ecx, r15w
or rax, rcx
mov rcx, r15
shl rcx, 8
and rcx, rsi
or rax, rcx
mov rcx, r15
shr rcx, 8
and rcx, r9
or rax, rcx
mov rcx, r15
shr r15, 4
shl rcx, 0xc
and r15, r12
and rcx, rbp
or rax, rcx
mov rcx, rdi
or r15, rax
mov rax, rdi
shr rcx, 0xc
shl rax, 4
and ecx, 0xf0000
and eax, 0xfff00000
or rax, rcx
movzx ecx, di
or rax, rcx
mov rcx, rdi
shl rcx, 8
and rcx, rsi
or rax, rcx
mov rcx, rdi
shr rcx, 8
and rcx, r9
or rax, rcx
mov rcx, rdi
shl rcx, 0xc
and rcx, rbp
or rax, rcx
shr rdi, 4
mov rcx, rdi
and rcx, r12
or rax, rcx
mov rcx, rbx
mov rdi, rax
mov rax, rbx
shr rcx, 0xc
shl rax, 4
and ecx, 0xf0000
and eax, 0xfff00000
or rax, rcx
movzx ecx, bx
or rax, rcx
mov rcx, rbx
shl rcx, 8
and rcx, rsi
or rax, rcx
mov rcx, rbx
shr rcx, 8
and rcx, r9
or rax, rcx
mov rcx, rbx
shr rbx, 4
shl rcx, 0xc
and rbx, r12
and rcx, rbp
or rax, rcx
mov rcx, r14
or rax, rbx
shr rcx, 0xc
mov rbx, rsi
mov r13, rax
mov rax, r14
and ecx, 0xf0000
shl rax, 4
and eax, 0xfff00000
or rax, rcx
movzx ecx, r14w
or rax, rcx
mov rcx, r14
shl rcx, 8
and rcx, rsi
or rax, rcx
mov rcx, r14
shr rcx, 8
and rcx, r9
or rax, rcx
mov rcx, r14
shr r14, 4
shl rcx, 0xc
and r14, r12
and rcx, rbp
or rax, rcx
mov rcx, r10
or r14, rax
mov rax, r10
shr rcx, 0xc
shl rax, 4
and ecx, 0xf0000
and eax, 0xfff00000
or rax, rcx
movzx ecx, r10w
or rax, rcx
mov rcx, r10
shl rcx, 8
and rcx, rsi
or rax, rcx
mov rcx, r10
shr rcx, 8
and rcx, r9
or rax, rcx
mov rcx, r10
shr r10, 4
shl rcx, 0xc
and r10, r12
and rcx, rbp
or rax, rcx
mov rcx, r8
or r10, rax
mov rax, r8
shl rcx, 4
shr rax, 0xc
and ecx, 0xfff00000
and eax, 0xf0000
or rcx, rax
movzx eax, r8w
or rcx, rax
mov rax, r8
shl rax, 8
and rax, rsi
mov rsi, rdx
or rcx, rax
mov rax, r8
shl rsi, 4
shr rax, 8
and esi, 0xfff00000
and rax, r9
or rcx, rax
mov rax, r8
shr r8, 4
shl rax, 0xc
and r8, r12
and rax, rbp
or rcx, rax
mov rax, rdx
shr rax, 0xc
or rcx, r8
mov r8, r11
and eax, 0xf0000
shl r8, 4
or rsi, rax
movzx eax, dx
and r8d, 0xfff00000
or rsi, rax
mov rax, rdx
shl rax, 8
and rax, rbx
or rsi, rax
mov rax, rdx
shr rax, 8
and rax, r9
or rsi, rax
mov rax, rdx
shr rdx, 4
shl rax, 0xc
and rdx, r12
and rax, rbp
or rsi, rax
mov rax, r11
or rsi, rdx
shr rax, 0xc
and eax, 0xf0000
or r8, rax
movzx eax, r11w
or r8, rax
mov rax, r11
shl rax, 8
and rax, rbx
or r8, rax
mov rax, r11
shr rax, 8
and rax, r9
or r8, rax
mov rax, r11
shr r11, 4
shl rax, 0xc
and r11, r12
and rax, rbp
mov rbp, r13
or r8, rax
mov rax, rdi
xor rbp, rcx
xor rdi, r14
or r8, r11
mov r11, r15
xor rax, r10
xor rdi, rsi
xor r11, r14
mov rbx, rax
mov r9, rax
xor rbp, r8
xor rax, r11
mov rdx, r11
xor rbx, rsi
not rbp
mov qword [rsp + 0x28], rax
mov rax, r10
xor rdx, rcx
xor r14, r10
xor rax, r13
xor r9, r8
mov qword [rsp + 0x30], r14
mov r12, rdi
xor rax, r8
not r9
mov r14, rbx
mov r8, rbp
xor rax, rdx
xor r12, r9
xor r14, r9
mov r10, rbx
xor r8, rax
xor r11, rsi
xor r15, r13
mov rsi, r14
xor rdi, r8
xor r10, r8
xor rcx, r15
mov r15, rbp
mov qword [rsp + 0x50], rdi
mov rdi, qword [rsp + 0x28]
mov r13, rbp
mov qword [rsp + 0x58], r10
mov r10, r11
mov r11, qword [rsp + 0x30]
xor rdi, r12
xor r10, r8
mov qword [rsp + 0x88], r12
xor rcx, rdi
xor r14, r10
mov qword [rsp + 0x38], r10
mov r10, r11
xor r9, rcx
xor rdx, rcx
mov qword [rsp + 0x90], rdi
xor r10, rdx
xor r15, r9
mov qword [rsp + 0x98], r14
xor r13, r10
mov qword [rsp + 0x60], r15
mov r15, rax
xor rax, r10
xor r15, r9
mov qword [rsp + 0x70], r13
mov r13, qword [rsp + 0x28]
and r11, r10
mov rcx, r15
xor rcx, r10
and r13, rax
mov qword [rsp + 0x68], rcx
mov rcx, rdi
mov rdi, r13
mov r13, qword [rsp + 0x68]
and rcx, r9
and r13, r12
mov r12, rsi
and rsi, r15
xor rdx, rcx
xor r13, r11
xor rsi, r11
mov r11, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
and r11, r14
xor r11, rdx
mov rdx, qword [rsp + 0x50]
xor r11, r13
and rdx, rbp
xor rdx, r12
mov r12, qword [rsp + 0x70]
xor rdx, r15
xor rdx, rcx
mov rcx, qword [rsp + 0x38]
xor rbx, rax
xor rbx, rdi
xor rdx, rsi
and rcx, r8
xor rcx, qword [rsp + 0x28]
xor rcx, rax
xor rcx, rdi
mov rdi, qword [rsp + 0x58]
xor rcx, r13
and rdi, r12
xor rbx, rdi
mov rdi, rcx
xor rbx, rsi
mov r13, rbx
mov rbx, r11
and r11, rcx
xor rbx, rdx
xor rdi, r13
mov r14, rbx
mov rbx, r13
xor rbx, r11
mov rsi, r14
and rsi, rbx
xor rsi, rdx
xor rdx, r11
and rdx, rdi
mov rdi, r13
xor r11, rdx
xor rdi, rdx
mov rdx, rsi
and r11, r13
xor rcx, rdi
mov r13, rsi
xor rbx, r11
xor rcx, r11
xor r13, rdi
and rbx, rsi
xor rbx, r14
mov r14, rcx
xor rdx, rbx
xor r14, rbx
mov r11, rdx
mov rdx, rdi
xor rdx, rcx
mov qword [rsp + 0x70], rdx
mov rdx, r14
xor rdx, r13
and rbp, rdi
and rax, r11
and r8, rbx
mov qword [rsp + 0x78], rbp
mov rbp, r12
and r11, qword [rsp + 0x28]
and r15, r14
and rbp, rsi
mov r12, qword [rsp + 0x98]
and r10, r13
mov qword [rsp + 0x80], rbp
mov rbp, qword [rsp + 0x68]
xor r10, rax
and r12, rcx
and rbp, rdx
and rdx, qword [rsp + 0x88]
mov qword [rsp + 0x68], r12
mov r12, rdx
mov rdx, qword [rsp + 0x30]
xor r10, rbp
mov qword [rsp + 0x28], r12
and rbx, qword [rsp + 0x38]
and rdx, r13
and r9, qword [rsp + 0x70]
and rsi, qword [rsp + 0x58]
xor rdx, r12
mov r12, qword [rsp + 0x78]
xor r9, rax
mov rax, r15
mov r15, qword [rsp + 0x68]
mov qword [rsp + 0x30], r9
xor rax, rbp
xor r12, r11
mov rbp, qword [rsp + 0x90]
and rbp, qword [rsp + 0x70]
xor r12, r9
mov r9, r8
xor rbp, r15
and rcx, qword [rsp + 0x60]
xor r9, rdx
xor rbx, qword [rsp + 0x80]
xor rsi, r12
xor r8, r10
xor rax, r9
xor rbp, r9
mov r9, qword [rsp + 0x30]
mov r13, r8
xor rsi, rax
xor rcx, rbp
xor r11, rbx
xor rdx, r12
xor r11, rax
mov rax, qword [rsp + 0x78]
xor r9, rcx
mov r12, qword [rsp + 0x50]
xor rax, qword [rsp + 0x80]
xor rdx, rbx
xor rbp, r10
xor r13, r9
xor rcx, rax
mov rax, qword [rsp + 0x40]
and r12, rdi
mov rdi, qword [rsp + 0x48]
xor r12, r15
mov r10, rbp
and rax, r14
xor rax, qword [rsp + 0x28]
xor r12, rsi
mov r14, rdx
xor rax, r8
xor r14, rcx
xor r10, r11
xor r10, qword [rdi - 0x30]
xor rax, rsi
mov rsi, qword [rdi - 0x40]
mov rbx, r14
xor r10, r9
xor rbx, r13
xor rbx, qword [rdi - 0x38]
xor rsi, rbp
xor rsi, r12
xor rsi, rax
mov qword [rsp + 0x38], rsi
mov rsi, rdi
mov rdi, qword [rdi - 0x28]
xor rdi, rdx
mov rdx, qword [rsi - 0x20]
xor rdi, r12
xor rdx, r11
xor rdi, rax
xor rdx, rcx
xor rdx, r13
xor rbp, qword [rsi - 0x18]
xor r8, qword [rsi - 8]
mov r13, rdx
mov rdx, rbx
mov r15, r8
xor rbp, r9
ror rdx, 0x10
xor r15, r11
mov qword [rsp + 0x28], r13
mov r9, r13
mov qword [rsp + 0x30], rdx
mov rdx, rdi
mov r13, r15
xor rbp, r12
ror rdx, 0x10
ror r13, 0x10
xor rax, qword [rsi - 0x10]
mov r11, rbp
mov qword [rsp + 0x40], rdx
mov rdx, rdi
xor rax, r14
mov r14, qword [rsp + 0x38]
xor rdx, rbp
mov qword [rsp + 0x50], r15
xor r15, r13
ror r11, 0x10
mov qword [rsp + 0x68], rdx
mov rdx, rbx
mov rcx, r14
mov r12, r14
mov qword [rsp + 0x70], r15
xor r15, rax
xor rdx, r10
ror rcx, 0x10
mov qword [rsp + 0x58], rdx
xor r12, rbp
ror r9, 0x10
mov r8, r10
mov qword [rsp + 0x88], r15
mov r15, qword [rsp + 0x28]
mov rsi, r9
mov r9, rax
ror r9, 0x10
ror r8, 0x10
xor r14, rbx
mov rdx, r15
xor rdx, rbp
mov qword [rsp + 0x60], rdx
mov rdx, r10
xor rdx, rdi
xor rdi, r15
mov qword [rsp + 0x80], rdi
mov rdi, rcx
xor rdi, r11
mov qword [rsp + 0x78], rdx
mov rdx, rbp
mov r15, rdi
mov rdi, qword [rsp + 0x70]
xor rdx, rax
xor r15, rax
xor rdi, rcx
xor r15, r12
xor rdi, r11
rol r15, 0x20
xor rdi, rdx
xor r15, rdi
mov rdi, qword [rsp + 0x30]
xor rbx, rbp
xor rbx, qword [rsp + 0x50]
xor rbx, qword [rsp + 0x30]
xor rdi, rcx
xor rbx, r11
xor rdi, r13
xor rbx, r9
xor rdi, r11
rol rbx, 0x20
xor rdi, r9
xor rdi, r12
mov r12, qword [rsp + 0x38]
mov qword [rsp + 0x38], rdx
xor rdi, rbx
mov rbx, r10
xor r10, rdx
mov rdx, qword [rsp + 0x40]
xor rbx, r13
xor r10, r8
xor r12, rbx
mov rbx, rax
xor r10, rcx
xor r12, rax
xor rbx, r8
xor r10, rdx
xor r12, r8
xor rbx, r13
xor rbx, qword [rsp + 0x30]
xor r10, r11
xor r12, r9
xor rbx, r9
xor r10, r14
rol r12, 0x20
xor rbx, r14
xor rbx, r12
mov r12, qword [rsp + 0x88]
xor rcx, r12
xor rcx, rdx
xor rcx, r11
xor r14, rcx
xor r14, qword [rsp + 0x68]
mov rcx, rdx
mov rdx, qword [rsp + 0x30]
rol r14, 0x20
xor r14, r10
mov r10, qword [rsp + 0x50]
xor rcx, rdx
xor rdx, rsi
xor rcx, r13
xor r10, rdx
mov rdx, qword [rsp + 0x28]
xor rcx, rsi
xor r10, r11
xor rcx, r11
xor rdx, rax
xor r10, r9
xor r10, qword [rsp + 0x58]
xor r10, qword [rsp + 0x60]
xor rdx, r13
xor rcx, r9
rol r10, 0x20
xor rcx, qword [rsp + 0x68]
xor rdx, r8
xor rcx, qword [rsp + 0x58]
xor r8, r13
xor rdx, rsi
xor r8, r11
xor r10, rcx
mov rcx, qword [rsp + 0x78]
xor rdx, r11
xor r8, r9
xor rdx, r9
xor r8, rcx
xor rdx, rcx
xor r8, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x70]
xor rax, r13
rol r8, 0x20
mov r13, qword [rsp + 0x60]
sub qword [rsp + 0x48], 0x40
xor r8, rdx
mov rdx, qword [rsp + 0x40]
xor rbp, rcx
xor rbp, rdx
xor rdx, r12
xor rbp, r11
mov r11, qword [rsp + 0x80]
xor rdx, r9
xor rbp, r9
xor rbp, r11
xor rdx, r11
mov r11, rax
mov rax, rcx
xor r11, rsi
xor rax, rsi
rol rdx, 0x20
xor r11, r9
xor rax, r13
xor rdx, rbp
xor r11, r13
rol rax, 0x20
xor r11, rax
sub qword [rsp + 0xa0], 1
jne 0x2166ba3b0
movq xmm7, rdi
movq xmm0, r15
movq xmm6, r14
punpcklqdq xmm0, xmm7
movq xmm7, r8
movq xmm4, r11
movaps xmmword [rsp + 0xf0], xmm0
movq xmm0, rbx
punpcklqdq xmm0, xmm6
movaps xmmword [rsp + 0x100], xmm0
movq xmm0, r10
punpcklqdq xmm0, xmm7
movaps xmmword [rsp + 0x110], xmm0
movq xmm0, rdx
punpcklqdq xmm0, xmm4
movaps xmmword [rsp + 0x120], xmm0
movdqa xmm5, xmmword [0x2167e2310]
movdqa xmm0, xmmword [rsp + 0xf0]
movdqa xmm9, xmmword [0x2167e2300]
movdqa xmm11, xmmword [0x2167e2320]
movdqa xmm4, xmm0
movdqa xmm1, xmm0
movdqa xmm2, xmm0
movdqa xmm10, xmmword [0x2167e2330]
psllq xmm4, 4
psrlq xmm1, 0xc
movdqa xmm8, xmmword [0x2167e2350]
movdqa xmm7, xmmword [0x2167e2340]
pand xmm1, xmm5
pand xmm4, xmm9
movdqa xmm6, xmmword [0x2167e2360]
por xmm4, xmm1
psrlq xmm2, 8
movdqa xmm1, xmm0
psllq xmm1, 8
pand xmm2, xmm10
pand xmm1, xmm11
por xmm1, xmm2
movdqa xmm2, xmm0
por xmm4, xmm1
psrlq xmm2, 4
movdqa xmm1, xmm0
psllq xmm1, 0xc
pand xmm2, xmm8
pand xmm0, xmm6
pand xmm1, xmm7
por xmm1, xmm2
por xmm0, xmm1
por xmm4, xmm0
movdqa xmm0, xmmword [rsp + 0x100]
movq r12, xmm4
movdqa xmm2, xmm0
movdqa xmm1, xmm0
movdqa xmm3, xmm0
psllq xmm2, 8
psrlq xmm1, 8
pand xmm1, xmm10
psrlq xmm3, 0xc
pand xmm2, xmm11
por xmm2, xmm1
movdqa xmm1, xmm0
pand xmm3, xmm5
psllq xmm1, 4
pand xmm1, xmm9
por xmm1, xmm3
movdqa xmm3, xmm0
por xmm2, xmm1
psllq xmm3, 0xc
movdqa xmm1, xmm0
psrlq xmm1, 4
pand xmm3, xmm7
pand xmm0, xmm6
pand xmm1, xmm8
por xmm1, xmm3
por xmm0, xmm1
por xmm2, xmm0
movdqa xmm0, xmmword [rsp + 0x110]
movq r11, xmm2
movq rdi, xmm2
movdqa xmm1, xmm0
movdqa xmm3, xmm0
movdqa xmm12, xmm0
psrlq xmm1, 0xc
psllq xmm3, 4
pand xmm3, xmm9
psrlq xmm12, 8
pand xmm1, xmm5
por xmm1, xmm3
movdqa xmm3, xmm0
pand xmm12, xmm10
psllq xmm3, 8
pand xmm3, xmm11
por xmm3, xmm12
movdqa xmm12, xmm0
por xmm1, xmm3
psrlq xmm12, 4
movdqa xmm3, xmm0
psllq xmm3, 0xc
pand xmm12, xmm8
pand xmm0, xmm6
pand xmm3, xmm7
por xmm3, xmm12
por xmm0, xmm3
movdqa xmm3, xmmword [rsp + 0x120]
por xmm1, xmm0
movdqa xmm0, xmm3
movq rax, xmm1
psllq xmm0, 8
pand xmm0, xmm11
movdqa xmm11, xmm3
psrlq xmm11, 8
pand xmm10, xmm11
por xmm0, xmm10
movdqa xmm10, xmm3
psllq xmm10, 4
pand xmm9, xmm10
movdqa xmm10, xmm3
psrlq xmm10, 0xc
pand xmm5, xmm10
por xmm5, xmm9
por xmm0, xmm5
movdqa xmm5, xmm3
psrlq xmm5, 4
pand xmm5, xmm8
movdqa xmm8, xmm3
pand xmm3, xmm6
psllq xmm8, 0xc
movhlps xmm6, xmm4
pand xmm7, xmm8
movq r13, xmm6
movhlps xmm6, xmm1
por xmm5, xmm7
movhlps xmm7, xmm2
movq rdx, xmm6
mov rcx, r13
por xmm3, xmm5
xor rcx, rax
movq r14, xmm7
xor rdi, rdx
por xmm0, xmm3
xor r13, r14
mov rbx, rcx
mov rbp, r14
movhlps xmm7, xmm0
movq rsi, xmm0
xor r14, rax
xor rbp, r12
movq r8, xmm7
xor r13, rsi
mov qword [rsp + 0x30], r14
xor rax, r11
xor rbx, r8
mov r15, r13
movq r10, xmm0
xor r11, r12
not rbx
xor r10, rcx
xor rcx, rbp
xor rdi, r8
xor r15, rbx
xor r11, rdx
movq r9, xmm6
not rdi
mov qword [rsp + 0x28], r15
mov r14, qword [rsp + 0x28]
xor r9, rbp
xor rax, r8
mov r15, r10
xor rax, r9
mov r8, rdi
xor rsi, rbp
xor r14, rcx
xor r15, rbx
xor r8, rax
mov rbp, qword [rsp + 0x30]
xor r11, r14
xor r13, r8
mov rdx, rdi
mov qword [rsp + 0x38], r15
xor rbx, r11
mov qword [rsp + 0x50], r13
xor r9, r11
mov r13, r10
mov r12, rbx
mov rbx, rdi
mov r11, rax
xor r13, r8
xor rbx, r12
xor r11, r12
xor rsi, r8
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], rbx
mov rbx, rbp
mov r13, r15
xor rbx, r9
xor r13, rsi
mov qword [rsp + 0x48], r11
mov r15, rbx
xor rdx, rbx
mov rbx, r11
mov qword [rsp + 0x40], rsi
xor rbx, r15
mov rsi, r14
mov r14, rdx
xor rax, r15
mov r11, rbx
mov rbx, rbp
mov rbp, qword [rsp + 0x28]
mov rdx, rsi
and rbx, r15
mov qword [rsp + 0x68], r11
and rdx, r12
xor r10, rax
and rbp, r11
mov r11, qword [rsp + 0x38]
and r11, qword [rsp + 0x48]
xor r9, rdx
xor rbp, rbx
xor r11, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x88], rsi
mov rsi, rcx
mov qword [rsp + 0x80], r13
and rbx, r13
and rsi, rax
xor rbx, r9
mov r9, qword [rsp + 0x50]
xor r10, rsi
xor rbx, rbp
and r9, rdi
xor r9, qword [rsp + 0x38]
xor r9, qword [rsp + 0x48]
xor r9, rdx
mov rdx, qword [rsp + 0x40]
xor r9, r11
and rdx, r8
xor rdx, rcx
xor rdx, rax
xor rdx, rsi
xor rdx, rbp
mov rbp, qword [rsp + 0x58]
mov rsi, rdx
and rbp, r14
xor r10, rbp
xor r10, r11
mov rbp, r10
mov r10, rbx
and rbx, rdx
xor r10, r9
mov r13, r10
mov r10, rbp
xor r10, rbx
mov r11, r13
and r11, r10
xor r11, r9
xor rsi, rbp
xor r9, rbx
and r9, rsi
mov rsi, rbp
and r14, r11
xor rbx, r9
xor rsi, r9
mov r9, r11
and rbx, rbp
xor rdx, rsi
and rdi, rsi
xor r10, rbx
xor rdx, rbx
mov qword [rsp + 0x78], rdi
mov rdi, qword [rsp + 0x68]
and r10, r11
mov rbx, rdx
xor r10, r13
mov r13, rsi
xor rbx, r10
xor r9, r10
xor r13, rdx
and r8, r10
mov rbp, rbx
mov rbx, r11
and rax, r9
and rcx, r9
xor rbx, rsi
mov r9, qword [rsp + 0x30]
and r12, r13
and r10, qword [rsp + 0x40]
mov qword [rsp + 0x70], rbx
xor rbx, rbp
and r9, qword [rsp + 0x70]
xor r10, r14
and rdi, rbx
and rbx, qword [rsp + 0x28]
xor r9, rbx
mov qword [rsp + 0x68], rdi
mov rdi, qword [rsp + 0x80]
mov qword [rsp + 0x28], r9
mov r9, r12
mov r12, qword [rsp + 0x78]
and rdi, rdx
xor r9, rax
xor r12, rcx
mov qword [rsp + 0x80], rdi
mov rdi, r12
mov r12, qword [rsp + 0x28]
xor rdi, r9
and r15, qword [rsp + 0x70]
and r11, qword [rsp + 0x58]
xor rcx, r10
xor r15, rax
mov rax, qword [rsp + 0x48]
xor r12, r8
xor r11, rdi
and r13, qword [rsp + 0x88]
xor r13, qword [rsp + 0x80]
and rax, rbp
xor rax, qword [rsp + 0x68]
xor r13, r12
and rdx, qword [rsp + 0x60]
xor rax, r12
xor rdx, r13
xor r15, qword [rsp + 0x68]
xor rcx, rax
xor r11, rax
mov rax, qword [rsp + 0x28]
xor r9, rdx
xor r8, r15
xor r13, r15
xor rax, rdi
mov rdi, qword [rsp + 0x38]
xor rax, r10
mov r10, qword [rsp + 0x78]
and rdi, rbp
xor r10, r14
xor rbx, rdi
mov rdi, qword [rsp + 0x1f0]
xor r10, rdx
mov rdx, qword [rsp + 0x50]
xor rbx, r8
and rdx, rsi
mov rsi, r8
xor rdx, qword [rsp + 0x80]
xor rdx, r11
xor rsi, r9
xor rbx, r11
mov r11, qword [rdi]
xor r11, r13
xor r11, rdx
xor r11, rbx
mov qword [rsp + 0xf0], r11
mov r11, qword [rdi + 8]
xor r11, rax
xor r11, r10
xor r11, rsi
mov qword [rsp + 0xf8], r11
mov r11, r13
xor r11, rcx
xor r11, qword [rdi + 0x10]
xor r13, qword [rdi + 0x28]
xor r11, r9
xor r8, qword [rdi + 0x38]
xor r13, r9
mov qword [rsp + 0x100], r11
mov r11, qword [rdi + 0x18]
xor r8, rcx
xor r13, rdx
mov qword [rsp + 0x128], r8
xor r11, rax
xor rax, qword [rdi + 0x30]
mov qword [rsp + 0x118], r13
xor r11, rdx
xor rax, r10
xor r11, rbx
xor rax, rbx
mov qword [rsp + 0x108], r11
mov r11, qword [rdi + 0x20]
mov qword [rsp + 0x120], rax
xor r11, rcx
mov rcx, qword [rsp + 0xa8]
xor r11, r10
xor r11, rsi
mov qword [rsp + 0x110], r11
call fcn.2166b8f10
mov rdx, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x110]
movabs r9, 0xff00ff00ff00ff
mov rdi, qword [rsp + 0x208]
mov r8, rdx
mov rcx, rax
shr rdx, 8
and r8, r9
shr rax, 8
and rcx, r9
and rdx, r9
and rax, r9
mov r9, r8
shr r9, 8
or r8, r9
mov r9, rcx
shr r9, 8
or rcx, r9
mov r9, rdx
shr r9, 8
or rdx, r9
mov r9, rax
shr r9, 8
or rax, r9
movabs r9, 0xffff0000ffff
and r8, r9
and rcx, r9
and rdx, r9
and rax, r9
mov r9, r8
shr r9, 0x10
or r8d, r9d
mov dword [rdi], r8d
mov r8, rcx
shr r8, 0x10
or ecx, r8d
mov dword [rdi + 4], ecx
mov rcx, rdx
shr rcx, 0x10
or edx, ecx
mov dword [rdi + 8], edx
mov rdx, rax
shr rdx, 0x10
or eax, edx
mov dword [rdi + 0xc], eax
movaps xmm6, xmmword [rsp + 0x130]
movaps xmm7, xmmword [rsp + 0x140]
movaps xmm8, xmmword [rsp + 0x150]
movaps xmm9, xmmword [rsp + 0x160]
movaps xmm10, xmmword [rsp + 0x170]
movaps xmm11, xmmword [rsp + 0x180]
movaps xmm12, xmmword [rsp + 0x190]
add rsp, 0x1a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret