Function at 0x14007d550
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
lea rbp, [rsp - 0x220]
sub rsp, 0x320
mov rax, qword [0x140119088]
xor rax, rsp
mov qword [rbp + 0x210], rax
mov rsi, r8
mov r15, rdx
mov r13, rcx
mov qword [rsp + 0x60], rdx
mov qword [rbp + 0x78], r8
xor edi, edi
mov dword [rbp - 0x78], edi
mov dword [rsp + 0x30], 0xe0fae3ad
mov dword [rsp + 0x34], 0xf6f8e2ea
mov word [rsp + 0x38], 0xae
mov byte [rsp + 0x3a], 1
mov ecx, edi
nop word [rax + rax]
lea eax, [rcx - 0x75]
xor byte [rsp + rcx + 0x30], al
inc rcx
cmp rcx, 9
jb 0x14007d5c0
mov byte [rsp + 0x3a], 0
mov dword [rsp + 0x60], 0xe3ece2ad
mov dword [rsp + 0x64], 0x100adea
mov dword [rsp + 0x40], 0xfde8ffad
mov dword [rsp + 0x44], 0xfcfef9fc
mov dword [rsp + 0x48], 0xa8f0fa
mov byte [rsp + 0x4c], 1
mov dword [rsp + 0x68], 0xe2e4eaad
mov dword [rsp + 0x6c], 0xaff5f9ea
mov word [rsp + 0x70], 0x100
mov dword [rsp + 0x78], 0xebfdf5ff
mov dword [rsp + 0x7c], 0xfef8f6b2
mov word [rbp - 0x80], 0xf6
mov byte [rbp - 0x7e], 1
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 8]
call fcn.140074a60
nop
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14007d654
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
mov rcx, rax
call fcn.1400023f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x58]
call fcn.140074ce0
nop
lea rdx, [r13 + 0x240]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14007d6a6
mov rdx, qword [rdx]
mov rcx, rax
call fcn.1400023f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x38]
call fcn.140074560
nop
mov r8, r13
mov rdx, rax
lea rcx, [rbp - 0x70]
call fcn.140009ca0
nop
lea r8, [rsp + 0x30]
mov rdx, rax
lea rcx, [rbp + 0x98]
call fcn.140009c30
nop
lea r8, [r13 + 0x20]
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.140009ca0
nop
mov r8, qword [rbp + 0xb0]
cmp r8, 0x10
jb 0x14007d73b
inc r8
mov rdx, qword [rbp + 0x98]
lea rcx, [rbp + 0x98]
call fcn.140002480
movdqa xmm0, xmmword [0x1401067a0]
movdqu xmmword [rbp + 0xa8], xmm0
mov byte [rbp + 0x98], 0
mov r8, qword [rbp - 0x58]
cmp r8, 0x10
jb 0x14007d76c
inc r8
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
call fcn.140002480
movdqa xmm0, xmmword [0x1401067a0]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
lea rcx, [rbp + 0x38]
call fcn.140002130
nop
lea rcx, [rbp - 0x50]
call fcn.140002130
nop
lea rcx, [rbp + 0x58]
call fcn.140002130
nop
lea rcx, [rbp - 0x30]
call fcn.140002130
nop
lea rcx, [rbp - 8]
call fcn.140002130
lea rax, [rbp - 0x30]
mov qword [rbp - 0x10], rax
lea rdx, [r13 + 0x80]
lea rcx, [rbp - 0x30]
call fcn.140009660
mov rbx, rax
lea rdx, [rbp + 0xe8]
lea rcx, [rbp - 0x50]
call fcn.140009660
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0xc8]
call fcn.140081d70
nop
mov qword [rbp + 0x30], rdi
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp - 8]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0xb8]
call fcn.1400779a0
nop
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x110]
call fcn.1400d3c8c
mov edx, 1
lea rcx, [rbp + 0x110]
call fcn.140079e50
nop
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x80], xmm1
mov qword [rbp + 0x90], rdi
mov ecx, 0x20
call fcn.1400d2a2c
mov qword [rbp + 0x80], rax
lea r9, [rax + 0x20]
mov qword [rbp + 0x90], r9
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rbp + 0x88], r9
mov rax, qword [rbp + 0x80]
sub r9, rax
lea r8, [rbp + 0xc8]
cmp qword [rbp + 0xe0], 0x10
cmovae r8, qword [rbp + 0xc8]
lea rcx, [r13 + 0x260]
cmp qword [rcx + 0x18], 0x10
jb 0x14007d8a8
mov rcx, qword [rcx]
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0xd8]
mov rdx, qword [r13 + 0x270]
call fcn.140088420
mov r12, qword [rbp + 0x88]
mov r14, qword [rbp + 0x80]
cmp r14, r12
je 0x14007d93f
nop dword [rax + rax]
movzx edi, byte [r14]
lea rdx, [0x14007f590]
lea rcx, [rbp + 0x120]
call 0x1401ca7ad
int3
mov qword [rbp + 0x98], rdi
movdqa xmm0, xmmword [0x1401067a0]
movdqu xmmword [rbp + 0xa8], xmm0
mov byte [rbp + 0x98], 0
mov dword [rbp - 0x78], 0xc4
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rax
mov rcx, qword [rbp + 0x198]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x14007d9af
mov rax, qword [rbp + 0x168]
mov r8, qword [rax]
test r8, r8
je 0x14007d9af
mov rax, qword [rbp + 0x148]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0x190]
cmovb r8, qword [rbp + 0x190]
sub r8, rdx
jmp 0x14007d9e9
test cl, 4
jne 0x14007d9df
mov rax, qword [rbp + 0x160]
mov rcx, qword [rax]
test rcx, rcx
je 0x14007d9df
mov rax, qword [rbp + 0x140]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x178]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
jmp 0x14007d9e9
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x14007d9fb
lea rcx, [rbp + 0x98]
call fcn.140002280
nop
lea rdx, [section..data]
cmp qword [0x140119018], 0x10
cmovae rdx, qword [section..data]
lea rcx, [rbp + 0x98]
mov rdi, qword [rbp + 0xb0]
cmp rdi, 0x10
setae r12b
mov rbx, qword [rbp + 0x98]
cmovae rcx, rbx
mov r8, qword [rbp + 0xa8]
cmp r8, qword [0x140119010]
jne 0x14007da51
call fcn.1400d3c98
test eax, eax
jne 0x14007da51
xor r14b, r14b
jmp 0x14007da54
mov r14b, 1
test r12b, r12b
je 0x14007da8d
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14007da85
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007da85
call 0x1401e1128
int3
mov rcx, rbx
call fcn.1400d2cb8
test r14b, r14b
je 0x14007da99
call 0x1401d0d3e
int3
lea rdx, [rbp + 0xb8]
lea rcx, [rsp + 0x40]
call fcn.140079b10
mov rdx, rax
mov rcx, r13
call fcn.140080570
lea rdx, str.success
lea rcx, [rbp + 0xb8]
call fcn.140074240
lea rcx, [rax + 8]
cmp byte [rax], 4
mov r12d, 0
cmovne rcx, r12
cmp byte [rcx], r12b
je 0x14007df13
lea rdx, str.contents
lea rcx, [rbp + 0xb8]
call fcn.140074240
nop
mov qword [rsp + 0x40], r12
movdqa xmm0, xmmword [0x1401067a0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], r12b
mov dword [rbp - 0x78], 0xd2
cmp byte [rax], 3
jne 0x14007db2a
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x40]
cmp rax, rdx
je 0x14007db46
jmp 0x14007db2d
mov rdx, r12
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14007db3b
mov rdx, qword [rdx]
lea rcx, [rsp + 0x40]
call fcn.140002280
nop
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x98]
call fcn.14007f5b0
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14007db98
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007db93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007db93
push rax
call 0x140288d89
int3
call fcn.1400d2cb8
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
mov rdi, qword [rbp + 0xa8]
lea r14, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0x10
cmovae r14, qword [rbp + 0x98]
movabs rbx, 0x7fffffffffffffff
cmp rdi, rbx
ja 0x14007e0fb
mov qword [rsp + 0x58], 0xf
cmp rdi, 0x10
jae 0x14007dc01
mov qword [rsp + 0x50], rdi
mov r8d, 0x10
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.1400d3c86
jmp 0x14007dc56
mov rax, rdi
or rax, 0xf
cmp rax, rbx
ja 0x14007dc1c
mov rbx, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rbx, rcx
mov rdx, rbx
add rdx, 1
mov rax, 0xffffffffffffffff
cmovb rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400028a0
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400d3c80
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x14007dc82
add rdi, rcx
mov r14, rcx
jmp 0x14007dc8a
add rdi, r8
lea r14, [rsp + 0x40]
mov qword [r15], r12
mov qword [r15 + 8], r12
mov qword [r15 + 0x10], r12
sub rdi, r14
je 0x14007dcc8
mov rdx, rdi
mov rcx, r15
call fcn.14007b130
mov rbx, qword [r15]
mov r8, rdi
mov rdx, r14
mov rcx, rbx
call fcn.1400d3c86
lea rax, [rbx + rdi]
mov qword [r15 + 8], rax
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x14007dcfe
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007dcf9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007dcf9
call 0x1401f9661
int3
call fcn.1400d2cb8
mov qword [rsp + 0x50], r12
mov byte [rsp + 0x40], 0
mov qword [rsp + 0x58], 0xf
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x14007dd55
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007dd50
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007dd50
push rsi
call 0x1401aa109
int3
call fcn.1400d2cb8
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], 0
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x14007ddc3
mov rdx, qword [rbp + 0x90]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ddac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007ddac
push rsi
call 0x1402275b8
int3
call fcn.1400d2cb8
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], r12
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x110], rax
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x10c], edx
lea rcx, [rbp + 0x128]
call fcn.14007a530
lea rcx, [rbp + 0x130]
push rcx
call 0x140217352
lea rcx, [rbp + 0x1a8]
call 0x1402533ba
int3
mov qword [r15], r12
mov qword [r15 + 8], r12
mov qword [r15 + 0x10], r12
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x14007df73
mov rdx, qword [rbp + 0x90]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007df5c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007df5c
push rdx
call 0x1401a3367
int3
call fcn.1400d2cb8
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], r12
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x110], rax
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x10c], edx
lea rcx, [rbp + 0x128]
call fcn.14007a530
lea rcx, [rbp + 0x130]
call 0x1401c8ea7
int3
call fcn.140002100
nop
int3