Function at 0x140019ec0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov rdx, qword [rcx]
mov rax, rdx
add rax, 0xffffffffffffffff
mov qword [rsp + 0x50], rax
mov rcx, rax
xor rcx, rdx
movabs rdx, 0x7471481397be5373
movabs r8, 0x7471481397be5373
xor rdx, r8
cmp rcx, rdx
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140019f30
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, 8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
jmp 0x140019f3a
call fcn.1400091c0
jmp 0x14001a351
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov eax, dword [0x1401f1e98]
mov ecx, dword [0x1401f1e9c]
xor ecx, 0x2a241457
xor eax, ecx
mov ecx, 0x1e695509
xor ecx, 0x8ee83b47
add eax, ecx
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, 0x13922aa7
xor ecx, 0xffffffff
mov edx, 0x13922aa7
and edx, 0x13922aa7
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x5dff4b6a
xor edx, 0x89961b16
mov eax, 0x20dce353
xor eax, 0xdf231cac
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x3de90ec0
jae 0x14001a449
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x40]
mov edi, dword [0x1401f1ea0]
mov eax, dword [0x1401f1ea4]
mov r8d, 0xe7eeaa99
xor r8d, 0x856816b3
xor eax, r8d
add edi, eax
mov r8d, edi
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x1caf7b02
mov r10d, 0xffffffff
xor r10d, 0x4940b4e3
mov r11d, 0xc370e349
xor r11d, 0x8a3057aa
mov eax, r8d
and eax, r11d
and edi, r10d
mov esi, 0x7967b474
xor esi, 0x30270097
mov r11d, r9d
and r11d, esi
mov esi, r10d
and esi, 0x1caf7b02
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r9d
mov r9d, 0xcd49b535
xor r9d, 0x32b64aca
xor r8d, r9d
mov r9d, 0x6a8369f2
xor r9d, 0x23c3dd11
or r9d, r10d
and r8d, r9d
or eax, r8d
mov r8d, 0x8d54ffa3
xor r8d, 0x39cef25f
xor eax, r8d
xor eax, 0xe3c84f04
cmp rcx, rdx
setl cl
mov byte [rsp + 0x27], cl
cmp eax, 0xcd652b12
ja 0x14001a449
mov al, byte [rsp + 0x27]
test al, 1
jne 0x14001a28e
jmp 0x14001a09d
mov rax, qword [rsp + 0x28]
cmp rax, 0
jl 0x14001a1ca
mov eax, dword [0x1401f1ea8]
mov ecx, dword [0x1401f1eac]
xor ecx, 0x1fc688e3
sub eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x314df159
mov edx, 0xffffffff
xor edx, 0xc77db51f
or eax, ecx
mov ecx, 0xcb83bf9e
xor ecx, 0xcfe0a81
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xcca7f5bf
xor ecx, 0x30940195
and eax, ecx
mov ecx, 0xacea9b93
xor ecx, 0xf5690672
sub eax, ecx
cmp eax, 0xa03b3a08
je 0x14001a452
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x48]
mov eax, dword [0x1401f1eb0]
imul eax, dword [str._o_H]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x78187bfd
mov r10d, 0xffffffff
xor r10d, 0x78187bfd
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x78187bfd
or eax, 0x78187bfd
imul eax, r9d
add eax, r8d
mov r8d, 0x3a65b872
xor r8d, 0x3a65b872
mov r9d, 0xf2e0aea9
xor r9d, 0xec810d05
sub r8d, r9d
add eax, r8d
mov r8d, eax
xor r8d, 0x6fd201d8
mov r9d, 0xffffffff
xor r9d, 0x6fd201d8
and eax, r9d
shl eax, 1
sub eax, r8d
cmp rcx, qword [rdx]
setl cl
mov byte [rsp + 0x26], cl
cmp eax, 0x814ee4ab
jbe 0x14001a452
mov al, byte [rsp + 0x26]
test al, 1
jne 0x14001a1d7
jmp 0x14001a1ca
mov rcx, rdx
call fcn.140016582
jmp 0x14001a351
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
imul rax, rax, 0x18
add rcx, rax
call fcn.140019e84
mov rcx, qword [rsp + 0x28]
movabs rax, 0xcdfed28691ca5089
movabs rdx, 0x32012d796e35af76
xor rax, rdx
mov rdx, rcx
and rdx, rax
movabs rax, 0xdabe2ce55b057b9b
movabs r8, 0xdabe2ce55b057b99
xor rax, r8
imul rdx, rax
mov rax, rcx
xor rax, 0xffffffffffffffff
add rax, rdx
mov rdx, rax
xor rdx, rcx
cmp rdx, 0
setl r8b
movabs rdx, 0x9922fa8644842ee0
movabs r9, 0x9922fa8644842ee0
xor rdx, r9
cmp rcx, rdx
setne dl
xor r8b, 0xff
mov cl, dl
xor cl, r8b
and cl, dl
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x14001a284
jmp 0x140019f3a
call fcn.1400091c0
jmp 0x14001a351
mov eax, dword [0x1401f1eb8]
add eax, dword [0x1401f1ebc]
and eax, 0x830b970a
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xd1f3e960
mov edx, 0xffffffff
xor edx, 0xd1f3e960
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x39d31e37
xor edx, 0xc62ce1c8
xor ecx, edx
and eax, ecx
add eax, 0x27c918ab
cmp eax, 0x37b515e5
je 0x14001a45b
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401f1ec0]
xor eax, 0xff8926d2
or eax, dword [0x1401f1ec4]
add eax, 0xe6bacecf
sub eax, 0xeecd1841
mov r8d, 0xbea0875e
xor r8d, 0x581a4991
sub eax, r8d
imul eax, eax, 0x3fc3377a
mov r8d, 0xc1c36d19
xor r8d, 0x8c85d471
sub eax, r8d
mov r8d, 0x8776d0fc
xor r8d, 0x35134ca5
add eax, r8d
add eax, 0x4d46b968
mov qword [rcx], rdx
cmp eax, 0x21b3a186
jb 0x14001a2de
jmp 0x14001a351
mov edx, dword [0x1401f1ec8]
or edx, dword [0x1401f1ecc]
mov eax, 0x9e6b60e4
xor eax, 0x61949f1b
mov r8d, edx
xor r8d, eax
and r8d, 0x872df76c
mov ecx, 0xffffffff
xor ecx, 0x872df76c
and edx, ecx
mov eax, 0xffffffff
xor eax, 0x5d60914a
and eax, 0x872df76c
and ecx, 0x5d60914a
or r8d, edx
or eax, ecx
xor r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xee6221c8
xor eax, 0x62318e25
and eax, ecx
mov edx, 0x6916e095
xor edx, 0xe5454f78
mov ecx, 0xba9c11ef
xor ecx, 0x4563ee10
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x7be26e75
and ecx, 0x8c53afed
and edx, 0x7be26e75
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, eax
xor ecx, 0x3ec42f59
xor ecx, 0xffffffff
or eax, 0x3ec42f59
and eax, ecx
cmp eax, 0xd17f9c71
jae 0x14001a464
mov eax, dword [0x1401f1ed0]
xor eax, 0xc53b21ca
imul eax, dword [0x1401f1ed4]
mov ecx, 0x2c00e63a
xor ecx, 0x3c0267d9
xor eax, ecx
and eax, 0xa9090c30
sub eax, 0xbd2a86a8
mov ecx, 0x16fbe44c
xor ecx, 0x478aaed4
cmp eax, ecx
je 0x14001a406
add rsp, 0x58
pop rdi
pop rsi
ret
cmp bh, byte [rbx - 1]
psubsw mm4, qword [rsi - 5]
invalid
movsb byte [rdi], byte [rsi]
sbb ah, byte [rcx + 0x21]
jmp 0x14001a112
lodsb al, byte [rsi]
invalid
xor al, 0x46
xchg edx, eax
xchg ecx, ebp
cdq
invalid