Function at 0x14007c3e8
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r15, rdx
mov r13, rcx
xor esi, esi
mov qword [rbp + 0x58], rsi
movabs rax, 0x4014c083ae0ad79c
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x50], rsi
movabs rax, 0x548c7cabc41c7ad8
mov qword [rbp + 0x50], rax
movabs rax, 0x5034f487584bec48
sub rax, qword [0x14031d050]
sub rax, qword [0x14031d058]
movabs rcx, 0xf8f8cd954915505f
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x87d654b55830e2a1
add rcx, rax
mov rdi, qword [0x14031d040]
add rcx, rdi
movabs rax, 0x5a9179a4d2fc8247
xor rcx, rax
movabs rax, 0x5f627dc43b9253d2
sub rcx, rax
movabs rax, 0x423b3cd0cf2a1bc4
xor rcx, rax
movabs rdx, 0xb483ce41b8ca9709
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ae48fd422
mov r10, qword [0x14031d038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b51b702bdd
mov r11, qword [0x14031d030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d9a1c3a6977
add rdx, rax
add rdx, rcx
movabs rax, 0xaa60c61ddabd75a
xor rdx, rax
mov qword [rbp + 0x50], rdx
movabs rax, 0x1a3b20dc29163e99
sub rax, qword [0x14031d050]
sub rax, qword [0x14031d058]
movabs rcx, 0xf8f8cd98552714d9
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x47d654b96ac8a1d8
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a83f107691
xor rcx, rax
movabs rax, 0x5f627dc6c796ac84
sub rcx, rax
movabs rax, 0x363b3cd24f4adb90
xor rcx, rax
movabs rax, 0x3483ce44a3db9b13
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad88f8e28
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5277071d7
xor r11, rax
movabs rax, 0xe0b56d8e0ff4617d
add rcx, rax
add rcx, r11
movabs rax, 0x317d873187d00b98
xor rcx, rax
mov qword [rbp + 0x58], rcx
and rcx, rdx
mov rax, qword [r13 + 0x28]
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], rsi
cmp rax, rcx
jne 0x14007c64c
mov dword [rbp + 0x40], esi
mov dword [rbp + 0x40], 0x367b791f
mov eax, 0x62a5eb62
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x558bc63b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xab4f364c
add eax, ecx
xor eax, 0x3f818c8d
add eax, 0x382e8965
xor eax, 0xbb7c7110
lea edx, [rcx + 0x243c09de]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd88e0194
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x2771fe6b
add ecx, 0xe6649ae
add ecx, edx
xor ecx, 0xa73f80dc
mov dword [rbp + 0x40], ecx
movsxd rax, ecx
imul rax, r15
mov dword [rbp + 0x40], esi
jmp 0x14007cf5d
mov qword [rbp - 0x50], rsi
movabs rax, 0xbddbba2b32504de2
mov qword [rbp - 0x50], rax
movabs rax, 0x77e43600a9889dc1
sub rax, qword [0x14031d050]
sub rax, qword [0x14031d058]
movabs rcx, 0xf8f8cd975200d0e3
xor rax, rcx
sub rax, qword [0x14031d048]
movabs rcx, 0x7d654b8106ba48c
add rcx, rax
mov rdx, qword [0x14031d040]
add rcx, rdx
movabs rax, 0x5a9179a71c04feeb
xor rcx, rax
movabs rax, 0x5f627dc6842a3cce
sub rcx, rax
movabs rax, 0x4a3b3cd1cfae1383
xor rcx, rax
movabs rax, 0xb483ce43abac20e2
add rax, rcx
add rdx, rax
not rdx
movabs rcx, 0x13cce94adc8c349e
mov rax, qword [0x14031d038]
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52373cb61
mov rcx, qword [0x14031d030]
xor rcx, rax
movabs r8, 0xe0b56d92109785f3
add r8, rdx
add r8, rcx
movabs rax, 0x258bc823fbd339de
xor r8, rax
mov qword [rbp - 0x50], r8
lea rcx, [r13 + 0x30]
mov rdx, qword [r13 + 0x28]
call fcn.14029e080
nop
mov qword [rbp - 0x50], rsi
movdqa xmm0, xmmword [str.vSc0]
movdqu xmmword [rbp - 0x38], xmm0
mov word [rbp - 0x28], 0x5f03
mov r12, rsi
xor edx, edx
mov rax, r12
movabs rcx, 0x13cce94adba99340
div rcx
add dl, 0x38
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov dil, sil
or dil, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov r11b, r14b
not r11b
mov bl, r14b
ror bl, 7
lea eax, [r10 - 0x50]
add bl, al
mov dl, byte [rbp + r12 - 0x38]
sub dl, dil
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x14031d058]
sub dl, byte [0x14031d050]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [rdi + 7]
add al, r14b
xor dl, al
sub dl, byte [0x14031d048]
sub dl, r9b
sub dl, r14b
sub dl, 0x50
mov rcx, qword [0x14031d040]
add dl, sil
add dl, cl
mov al, r8b
sub al, r9b
add al, dil
add al, r14b
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor bl, dl
mov al, r14b
add al, al
sub bl, al
add bl, sil
add bl, dil
add cl, 0x51
add bl, cl
not bl
mov al, r14b
sar al, 7
or al, r14b
sub bl, al
mov al, byte [0x14031d038]
xor al, r11b
sub bl, al
mov al, r14b
xor al, 0x40
sub bl, al
mov al, byte [0x14031d030]
xor al, r14b
add bl, al
movsx eax, r14b
movsx ecx, r11b
imul ecx, eax
xor bl, cl
mov byte [rbp + r12 - 0x38], bl
inc r12
cmp r12, 0x12
jb 0x14007c74f
lea rax, [rbp - 0x38]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0x12
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xor edi, edi
mov qword [rbp - 0x10], rdi
mov qword [rbp - 8], rdi
lea r8d, [rdi + 0x11]
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x20]
call fcn.140027330
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x38], xmm0
mov word [rbp - 0x28], ax
mov dword [rbp + 0x40], edi
mov dword [rbp + 0x40], 0x2e8193c9
mov eax, 0x61798d19
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x27808fbf
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xedc52618
add eax, ecx
xor eax, 0xbcb9a31
add eax, 0x48f97a29
xor eax, 0xacd016e1
lea edx, [rcx - 0x7dc7c09]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd9435910
sub edx, eax
mov r8d, dword [0x14031d030]
xor r8d, 0x26bca6ef
add r8d, 0xc434dd2b
add r8d, edx
xor r8d, 0x496085f0
mov dword [rbp + 0x40], r8d
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rcx, qword [rbp - 0x20]
movsxd rax, r8d
mov qword [rax + rcx], r15
mov dword [rbp + 0x40], edi
movabs rsi, 0xf15a834e3be47a46
movabs rbx, 0xfb9b111b60b5a10b
movabs rax, 0x56a7136bc4fb5840
movabs r10, 0xc4a552b68f5fb0a8
mov r15, qword [0x14031d070]
imul r15, rax
not r15
movabs rdx, 0x3b5aad4977bfe036
mov rax, qword [0x14031d060]
xor rax, rdx
and r15, rax
ror r15, 0x12
shr r15, 8
movabs rax, 0x9c0bfd8a42b0b0b0
mov r11, qword [0x14031d060]
imul r11, rax
movabs r8, 0x464eee49f4a5ef5
sub r11, r8
movabs rax, 0xae269fe97fffffff
xor r11, rax
shr r11, 0x1f
not r11
lea rcx, [r11 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x14031d060]
movzx eax, r11b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf9
mov edx, 0x8000003f
and ecx, edx
jge 0x14007ca4d
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, r11
ror rax, cl
not rax
movabs rcx, 0xb3248fafb74387b0
mov r12, rax
imul r12, rcx
lea r9, [r12 + r8]
mov r8, r11
imul r8, r15
sub r8, r9
xor r8, rsi
movzx r14d, r9b
mov ecx, r14d
xor ecx, 6
and ecx, 0xf
and ecx, edx
jge 0x14007ca90
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r8, cl
movabs rcx, 0xb49793ff47ac8490
imul rax, rcx
movabs rcx, 0x3f8e27f75edcd679
sub rax, rcx
xor r8, rax
mov rax, r9
sub rax, qword [0x14031d078]
xor r8, rax
xor r8, r10
mov rax, r8
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x14007cda8
sub rax, 1
je 0x14007ccae
sub rax, 1
movabs r14, 0xaaaaaaaaaaaaaaab
je 0x14007cbe3
cmp rax, 1
jne 0x14007ce31
mov rsi, r9
imul rsi, r11
movabs rax, 0x3830bc76998a0b5d
add rax, r8
xor rsi, rax
ror rsi, 0x2a
shr rsi, 0xc
not rsi
movabs rcx, 0x83572099c6ee
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0x4e66b9cf4c8b89d
xor rdx, rax
movzx eax, r8b
movzx ecx, sil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db978792a11
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rbx
mov eax, 0xa9a2f8fb
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rax, [0x14031d060]
mov cl, byte [rax + rcx*8]
and cl, 0xf
movabs rbx, 0x303397bbdde5b124
sub rbx, rsi
shr rbx, cl
movabs rcx, 0x46d136cfa70e72d
add rcx, r12
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
lea rdx, [0x14031d060]
imul rax, qword [rdx + rcx*8]
imul rax, r8
sub rax, r15
xor rbx, rax
jmp 0x14007ce31
movabs rcx, 0xaaaaaa1aa9bb05c5
mov r11, r8
xor r11, rcx
movabs rcx, 0x1206ed6bb6d989
imul r11, rcx
movabs rcx, 0xffff7e8a8fab3719
imul r12, rcx
movabs rcx, 0x43697ac26f759cf5
add r11, rcx
add r11, r12
movabs rax, 0x277cd7be7b6bd2a5
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
lea rax, [0x14031d060]
imul r9, qword [rax + rcx*8]
xor r9, 0xfffffffffceed315
lea ecx, [r8 + 7]
and cl, 0x3f
rol r9, cl
movabs rax, 0x3802708600000000
imul r9, rax
mov rcx, r9
ror rcx, 0x1e
not rcx
movabs rax, 0x9b2de6b2d21d4208
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, rbx
mov rbx, rdx
imul rbx, rax
jmp 0x14007ce31
movabs rax, 0x2eeafe03f8fcb32b
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0xea57cb1c41b85b9
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
and r14d, 0x8000003f
jge 0x14007cd01
dec r14d
or r14d, 0xffffffc0
inc r14d
mov cl, r14b
rol r10, cl
movabs rcx, 0x464eee49f4a5ef5
add rcx, r8
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x111b60b5a10b
lea rax, [0x14031d060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7f57f73e8
or r10, rax
mov rbx, qword [0x14031d070]
imul rbx, rsi
sub rbx, r9
mov rax, r15
sub rax, r10
xor rbx, rax
movabs rax, 0xc7a7c6a6a47773e5
xor rbx, rax
mov rax, r8
imul rax, r9
imul rax, rbx
mov rdi, r11
sub rdi, rax
movabs rax, 0x78958946b253fff
add rdi, rax
xor rdi, r15
not rdi
jmp 0x14007ce31
mov rcx, r8
imul rcx, qword [0x14031d080]
and rcx, qword [0x14031d080]
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x28
imul r10, r9
mov rdi, r15
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de79862204
imul rdi, rax
imul r14, qword [0x14031d060], 0xfffffffff8e0509e
mov rdx, qword [0x14031d068]
sub r14, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x14007ce14
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r14, cl
movabs r15, 0x464eee49f4a5ef5
add r15, r14
add r15, r12
movabs r14, 0xaaaaaaaaaaaaaaab
movabs rcx, 0xff055d7b89cd28c9
xor rsi, rcx
mov rax, r14
mul rsi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rsi, rax
xor r10, rdi
lea rax, [0x14031d060]
imul r10, qword [rax + rsi*8]
not r9
imul r9, r8
imul r9, r15
imul r9, rbx
movabs rcx, 0xf5ed7e878e7e6215
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.140070f60
mov qword [0x140321f60], rax
lea rdx, [rbp - 0x20]
mov rbx, qword [rbp - 8]
cmp rbx, 0xf
cmova rdx, qword [rbp - 0x20]
mov r8, qword [rbp - 0x10]
mov rcx, qword [r13 + 0x28]
call fcn.14029e080
xor esi, esi
mov dword [rbp + 0x40], esi
mov dword [rbp + 0x40], 0x931f6ae5
mov eax, 0x58bde3d8
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x647e757b
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0xbf49b924
add eax, ecx
xor eax, 0x504b35cd
add eax, 0x3cbd8b25
xor eax, 0x42d8cecf
lea r9d, [rcx + 0x328cd32e]
add r9d, eax
not r9d
mov eax, dword [0x14031d038]
xor eax, 0xd8532254
sub r9d, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x27acddab
add ecx, 0xd34de9ee
add ecx, r9d
xor ecx, 0x209a721c
mov dword [rbp + 0x40], ecx
movsxd rdi, ecx
mov dword [rbp + 0x40], esi
cmp rbx, 0xf
jbe 0x14007cf4a
mov r8, rbx
mov rdx, qword [rbp - 0x20]
lea rcx, [rbp - 0x20]
call fcn.140083388
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], sil
mov rax, rdi
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret