Function at 0x1400021f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x870
lea rbp, [rsp + 0x60]
and rbp, 0xffffffffffffffe0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x800], rax
mov r15, r8
mov r14, rdx
mov rbx, rcx
xor r12d, r12d
mov dword [rbp + 8], r12d
movabs rax, 0x1533fcf2bb929629
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xe0], rax
movabs rax, 0xe108a364acb43709
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xe8], rax
movabs rax, 0xd5422cf4c59faca8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xf0], rax
movabs r13, 0x1810370e3fcd51e8
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0xf8], rax
movabs rsi, 0x1550fc81bbfb966d
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x380], rax
movabs rdi, 0xe144a300acc63766
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x388], rax
movabs rax, 0xd5422c87c5f8acc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x390], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x398], rax
vmovdqu ymm0, ymmword [rbp + 0xe0]
vpxor ymm1, ymm0, ymmword [rbp + 0x380]
vmovdqu ymmword [rbp + 0xe0], ymm1
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xe0]
vzeroupper
call qword [0x1400164d8]
mov r10, rax
mov qword [rbp + 0x10], rax
movabs rax, 0x1533fcf2bb929609
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x100], rcx
movabs rax, 0xe125a364acb43709
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x108], rcx
movabs rax, 0xd5212ca9c588acb7
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x110], rcx
movabs rax, 0x1810370e3fa05187
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x118], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x3a0], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x3a8], rax
movabs rax, 0xd5422c87c5f8acc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3b0], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x3b8], rax
vmovdqu ymm0, ymmword [rbp + 0x100]
vpxor ymm1, ymm0, ymmword [rbp + 0x3a0]
vmovdqu ymmword [rbp + 0x100], ymm1
mov r8d, 0x1bb
xor r9d, r9d
lea rdx, [rbp + 0x100]
mov rcx, r10
vzeroupper
call qword [0x1400164f0]
mov r13, rax
mov r8d, dword [r14]
lea rdx, [rbp + 0x180]
mov rcx, rbx
call fcn.140001610
mov r8, rax
cmp qword [rax + 0x18], 7
jbe 0x14000242b
mov r8, qword [rax]
movabs rax, 0x1504fcd2bbb4963d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x2f0], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x2f8], rax
movdqa xmm0, xmmword [rbp + 0x2f0]
xorps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x80], xmm0
mov dword [rsp + 0x30], 0x800000
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea rdx, [rbp + 0x80]
mov rcx, r13
call qword [0x1400164d0]
mov r12, rax
mov rdx, qword [rbp + 0x198]
cmp rdx, 7
jbe 0x1400024f9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400024f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400024f4
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f10]
movdqu xmmword [rbp + 0x190], xmm0
xor ebx, ebx
mov word [rbp + 0x180], bx
xor edx, edx
mov r8d, 0xe8
lea rcx, [rbp + 0x200]
call fcn.1400143cc
lea rax, [0x140016a90]
mov qword [rbp + 0x200], rax
lea rcx, [rbp + 0x288]
call qword [0x140016408]
nop
mov dword [rbp + 8], 2
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x208]
lea rcx, [rbp + 0x200]
call qword [0x140016400]
nop
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x200], rax
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x1fc], edx
lea rcx, [rbp + 0x208]
call qword [0x140016410]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x208], rax
mov qword [rbp + 0x270], rbx
mov dword [rbp + 0x278], 4
mov eax, ebx
lea r9, [0x14001d0d0]
mov r8, r9
nop
movzx ecx, byte [r8]
sub cl, 0x36
ror cl, 1
movzx edx, al
sub dl, cl
xor dl, al
neg dl
xor dl, al
add dl, al
xor dl, 0xd4
ror dl, 3
sub dl, al
xor dl, 0x21
add dl, al
ror dl, 7
sub dl, al
mov byte [r8], dl
inc eax
lea r8, [r8 + 1]
cmp eax, 0x7a
jb 0x1400025d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1f0], xmm1
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [r9 + r8], 0
jne 0x140002625
mov rdx, r9
lea rcx, [rbp + 0x1e0]
call fcn.1400012b0
mov dword [rbp + 8], 6
lea rdx, [rbp + 0x1a0]
call fcn.140001420
mov rsi, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14000265e
mov rsi, qword [rax]
mov edx, dword [r14]
test edx, edx
je 0x1400026ff
cmp edx, 1
jne 0x1400026f6
movabs rax, 0x1563ceb788cda15a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0x1550fc81bbfb966d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x300], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x308], rax
movdqa xmm0, xmmword [rbp + 0x300]
xorps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
lea rax, [rbp + 0x20]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x1400026e3
lea rdx, [rbp + 0x20]
jmp 0x14000277e
mov rdi, qword [rbp + 0x10]
jmp 0x140002792
movabs rax, 0x2268cbb589cca05c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0x1550fc81bbfb966d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x310], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x318], rax
movdqa xmm0, xmmword [rbp + 0x310]
xorps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x30], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
lea rax, [rbp + 0x30]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140002770
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x60]
call fcn.1400012b0
lea rdi, [rbp + 0x60]
mov dword [rbp + 8], 0xe
cmp qword [rdi + 0x18], 0xf
jbe 0x14000279c
mov rdi, qword [rdi]
cmp qword [r15 + 0x18], 0xf
jbe 0x1400027a6
mov r15, qword [r15]
mov ecx, dword [r14]
movabs r14, 0xe144a300acc63766
test ecx, ecx
je 0x1400028cf
cmp ecx, 1
jne 0x1400028c6
movabs rax, 0x79259ae4d889f92b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rax, 0x84008374c5be7246
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
movabs rax, 0xd54248e2b19bc9b3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xb0], rax
movabs rcx, 0x1810370e3fcd51e8
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xb8], rax
movabs rax, 0x1550fc81bbfb966d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3c0], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x3c8], rax
movabs rax, 0xd5422c87c5f8acc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3d0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x3d8], rax
vmovdqu ymm0, ymmword [rbp + 0x3c0]
vpxor ymm0, ymm0, ymmword [rbp + 0xa0]
vmovdqa ymmword [rbp + 0xa0], ymm0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x40], xmm0
vxorps xmm1, xmm1, xmm1
vmovdqu xmmword [rbp + 0x50], xmm1
lea rax, [rbp + 0xa0]
mov r8, rbx
vzeroupper
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400028b0
lea rdx, [rbp + 0xa0]
jmp 0x1400029d5
mov r9, qword [rbp + 0x10]
jmp 0x1400029e6
movabs rax, 0x603f8ee4dc95f729
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc0], rax
movabs rax, 0x8832ca74cf871715
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc8], rax
movabs rax, 0xb62758e281d8d5b3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
movabs rax, 0x1810370e3fa9349c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
movabs rax, 0x1550fc81bbfb966d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3e0], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x3e8], rax
movabs rax, 0xd5422c87c5f8acc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3f0], rax
movabs rax, 0x1810370e3fcd51e8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x3f8], rax
vmovdqu ymm0, ymmword [rbp + 0x3e0]
vpxor ymm0, ymm0, ymmword [rbp + 0xc0]
vmovdqa ymmword [rbp + 0xc0], ymm0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x40], xmm0
vxorps xmm1, xmm1, xmm1
vmovdqu xmmword [rbp + 0x50], xmm1
lea rax, [rbp + 0xc0]
mov r8, rbx
vzeroupper
inc r8
cmp byte [rax + r8], 0
jne 0x1400029c4
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x40]
call fcn.1400012b0
lea r9, [rbp + 0x40]
or dword [rbp + 8], 0x10
cmp qword [r9 + 0x18], 0xf
jbe 0x1400029f0
mov r9, qword [r9]
lea r8, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
cmova r8, qword [rbp + 0x1e0]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
mov edx, 0x400
lea rcx, [rbp + 0x400]
call fcn.1400013c0
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x140002a65
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002a60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002a60
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f20]
movdqu xmmword [rbp + 0x50], xmm0
mov byte [rbp + 0x40], 0
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x140002ab4
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002aaf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002aaf
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f20]
movdqu xmmword [rbp + 0x70], xmm0
mov byte [rbp + 0x60], 0
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 0xf
jbe 0x140002b09
inc rdx
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002b04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002b04
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f20]
movdqu xmmword [rbp + 0x1b0], xmm0
mov byte [rbp + 0x1a0], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x1c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1d0], xmm1
lea rax, [rbp + 0x400]
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140002b40
mov r8, rbx
lea rdx, [rbp + 0x400]
lea rcx, [rbp + 0x1c0]
call fcn.1400012b0
lea r9, [rbp + 0x1c0]
cmp qword [rbp + 0x1d8], 0xf
cmova r9, qword [rbp + 0x1c0]
movabs rax, 0x1524fcefbb94962e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x120], rax
movabs rax, 0xe169a374aca83703
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x128], rax
movabs rax, 0xd5272cf7c581ac93
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x130], rax
movabs rax, 0x1860376f3fed51d2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x138], rax
movabs rax, 0x71e0127cecdaaf81
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x140], rax
movabs rax, 0xfd8ae77d7080001b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x148], rax
movabs rax, 0xdf51be81a99fc325
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x150], rax
movabs rax, 0x7aec0f3f0f190793
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x158], rax
movabs rdx, 0x803485e978046b75
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
movabs rcx, 0xe9a2da28866fda2e
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movabs rax, 0x1550fc81bbfb966d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x320], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x328], rax
movabs rax, 0xd5422c87c5f8acc7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x330], rax
movabs rax, 0x1810370e3fcd51e8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x338], rax
movabs rax, 0x71831215ecb6aff1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x340], rax
movabs rax, 0xfde5e71470f4007a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x348], rax
movabs rax, 0xdf22beeba9b0c34b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x350], rax
movabs rax, 0x7ae60f320f7707fc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x358], rax
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x360], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x368], rax
vmovdqu ymm0, ymmword [rbp + 0x320]
vpxor ymm0, ymm0, ymmword [rbp + 0x120]
vmovdqa ymmword [rbp + 0x120], ymm0
vmovdqu ymm1, ymmword [rbp + 0x340]
vpxor ymm0, ymm1, ymmword [rbp + 0x140]
vmovdqa ymmword [rbp + 0x140], ymm0
vmovdqa xmm1, xmmword [rbp + 0x160]
vxorps xmm1, xmm1, xmmword [rbp + 0x360]
vmovdqa xmmword [rbp + 0x160], xmm1
mov qword [rsp + 0x30], 0
mov eax, dword [rbp + 0x1d0]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
mov r8d, 0xffffffff
lea rdx, [rbp + 0x120]
mov rcx, r12
vzeroupper
call qword [0x1400164c8]
test eax, eax
je 0x140002dd3
xor edx, edx
mov rcx, r12
call qword [0x1400164e0]
mov rcx, r12
call qword [0x1400164e8]
mov rcx, r13
call qword [0x1400164e8]
mov rcx, qword [rbp + 0x10]
call qword [0x1400164e8]
mov rdx, qword [rbp + 0x1d8]
cmp rdx, 0xf
jbe 0x140002e33
inc rdx
mov rcx, qword [rbp + 0x1c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002e2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002e2e
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f20]
movdqu xmmword [rbp + 0x1d0], xmm0
mov byte [rbp + 0x1c0], 0
mov rdx, qword [rbp + 0x1f8]
cmp rdx, 0xf
jbe 0x140002e8e
inc rdx
mov rcx, qword [rbp + 0x1e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002e89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002e89
call qword [0x1400165c0]
int3
call fcn.140013324
movdqa xmm0, xmmword [0x140016f20]
movdqu xmmword [rbp + 0x1f0], xmm0
mov byte [rbp + 0x1e0], 0
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x200], rax
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x1fc], edx
lea rcx, [rbp + 0x208]
call fcn.140003530
lea rcx, [rbp + 0x210]
call qword [0x1400163a0]
lea rcx, [rbp + 0x288]
call qword [0x1400163a8]
mov al, 1
mov rcx, qword [rbp + 0x800]
xor rcx, rsp
call fcn.1400132c0
mov rbx, qword [rsp + 0x8c8]
add rsp, 0x870
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret