Function at 0x1401b6550
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xc8
mov rax, r8
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rcx
mov r8, qword [rax]
mov qword [rsp + 0xb8], r8
mov rax, qword [rax + 8]
mov rcx, rax
sub rcx, r8
mov qword [rsp + 0xc0], rcx
mov r9, rcx
xor r9, rax
xor r9, 0xffffffffffffffff
mov rdx, rax
and rdx, r9
shl rdx, 1
sub rdx, rax
mov rax, rcx
sub rax, rdx
movabs rdx, 0x7d0561da5aaee94e
movabs r9, 0x7d0561da5aaee94e
xor rdx, r9
cmp rax, rdx
setl al
mov r9, rcx
and r9, r8
movabs rdx, 0x53344860e775b830
movabs r10, 0x53344860e775b832
xor rdx, r10
imul rdx, r9
add rcx, r8
sub rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x1401b6606
jmp 0x1401b6610
call fcn.14000ee80
jmp 0x1401b6d8c
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x98], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
or rdx, r8
and rdx, 0xffffffffffffffff
movabs r8, 0xeed25e7aec34ef59
movabs r9, 0x112da18513cb10a6
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
and r8, 0xffffffffffffffff
movabs r9, 0xb8ed488a56cc23b1
movabs r10, 0x4712b775a933dc4e
xor r9, r10
xor r8, r9
and rcx, r8
xor rcx, 0xffffffffffffffff
and rdx, rcx
xor rdx, 0xffffffffffffffff
movabs rcx, 0xed4dfb3e285d22dc
movabs r8, 0x12b204c1d7a2dd23
xor rcx, r8
xor rax, rcx
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0x2bd7a84caba78634
xor rcx, r8
or rax, rdx
movabs rdx, 0x2bd7a84caba78634
or rcx, rdx
movabs rdx, 0x99df7ce83630fb2a
movabs r8, 0x66208317c9cf04d5
xor rdx, r8
xor rax, rdx
and rax, rcx
movabs rcx, 0x7141101c321ebddc
movabs rdx, 0x7141101c321ebddc
xor rcx, rdx
cmp rax, rcx
jge 0x1401b6712
call fcn.14000ee80
jmp 0x1401b6d8c
mov rax, qword [rsp + 0x98]
cmp rax, 0
jge 0x1401b683b
mov eax, dword [0x1402b3508]
mov edx, dword [0x1402b350c]
mov ecx, eax
xor ecx, edx
mov r8d, 0x352d6e2f
xor r8d, 0xcad291d0
xor ecx, r8d
mov r8d, edx
and r8d, ecx
mov ecx, 0x387482e8
xor ecx, 0x387482ea
imul ecx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xea67baf7
xor edx, edx
div ecx
or eax, 0x4529f525
or eax, 0xb236149f
mov ecx, 0x562179e7
xor ecx, 0x9885b29
cmp eax, ecx
jb 0x1401b6d9c
mov rcx, qword [rsp + 0x98]
mov eax, dword [0x1402b3510]
mov r9d, dword [str._dsj]
xor r9d, 0x41bca846
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0xb96e925a
xor edx, 0x40a33f5
sub eax, edx
mov r8d, 0xe3a3717e
xor edx, edx
div r8d
mov r8d, 0xe54025e5
xor edx, edx
div r8d
mov dword [rsp + 0x94], eax
movabs rdx, 0x20abbba60e97b22e
movabs rax, 0x20abbba60e97b22e
xor rdx, rax
movabs r8, 0xfc87b5c772d480e4
movabs rax, 0x83784a388d2b7f1b
xor r8, rax
call fcn.140018506
mov eax, dword [rsp + 0x94]
cmp eax, 0xef6aab54
je 0x1401b6783
jmp 0x1401b6d8c
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
call fcn.140031020
mov rax, qword [rsp + 0x98]
cmp rax, 0
je 0x1401b6d8c
mov ecx, dword [0x1402b3518]
xor ecx, 0xfbb112fd
mov r8d, dword [0x1402b351c]
mov edx, r8d
xor edx, 0xffffffff
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x4f89f40c
mov edx, 0xffffffff
xor edx, 0x4f89f40c
and ecx, edx
or eax, ecx
and eax, 0xd13b6ab2
xor eax, 0xf922aab8
cmp eax, 0x9fe6faf
jb 0x1401b6da5
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
mov r9d, dword [0x1402b3520]
xor r9d, dword [0x1402b3524]
mov eax, r9d
or eax, 0x76c0ccb5
xor eax, 0xffffffff
mov r10d, 0x85044d9d
xor r10d, 0x7afbb262
xor r9d, r10d
mov r10d, 0x4e851424
xor r10d, 0x3845d891
mov r11d, 0xf076b55d
xor r11d, 0xf894aa2
xor r10d, r11d
and r9d, r10d
xor eax, 0xffffffff
xor r9d, 0xffffffff
and eax, r9d
mov r9d, 0x4c969624
xor r9d, 0xfcaba94f
add eax, r9d
xor eax, 0x78c41bf3
add r8, 8
mov qword [rsp + 0x78], r8
mov r9, rcx
and r9, 0xffffffffffffffff
shl r9, 1
mov r8, rcx
add r8, 0xffffffffffffffff
sub r8, r9
mov qword [rsp + 0x80], r8
add rdx, 8
mov qword [rsp + 0x88], rdx
movabs rdx, 0x5da9cbbc0435ebda
movabs r8, 0xa2563443fbca1425
xor rdx, r8
cmp rcx, rdx
setg cl
mov byte [rsp + 0x93], cl
cmp eax, 0xc683c0df
jae 0x1401b6da5
xor eax, eax
mov qword [rsp + 0x70], rax
jmp 0x1401b69a3
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x60], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
cmp rax, rcx
jl 0x1401b69f4
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
movabs rax, 0xcdedbcc319d45670
movabs r8, 0x3212433ce62ba98f
xor rax, r8
add rdx, rax
call fcn.140025e55
jmp 0x1401b6d8c
mov eax, dword [0x1402b3528]
mov edx, dword [0x1402b352c]
mov ecx, eax
xor ecx, edx
xor edx, 0xffffffff
and eax, edx
shl eax, 1
sub eax, ecx
sub eax, 0x5dcee137
or eax, 0xaf3c0b54
imul eax, eax, 0x6ef9497
mov ecx, 0x202af7b5
xor ecx, 0xc763a8db
cmp eax, ecx
ja 0x1401b6dae
mov rcx, qword [rsp + 0x78]
mov eax, dword [0x1402b3530]
mov r8d, dword [0x1402b3534]
mov edx, 0x2fd60bb
xor edx, 0x2fd60bb
sub edx, r8d
sub eax, edx
imul eax, eax, 0xa5c705ca
mov edx, 0x36a8ac7f
xor edx, 0xfe9c3512
and eax, edx
mov r9d, 0xffffffff
xor r9d, 0x34f793f
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x34f793f
or eax, 0x34f793f
imul eax, r8d
add eax, edx
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x5f], cl
cmp eax, 0x1527c9c2
jb 0x1401b6a31
mov al, byte [rsp + 0x5f]
test al, 1
jne 0x1401b6b18
jmp 0x1401b6ac9
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
movabs rcx, 0x628dde91ba6ee1b1
movabs rdx, 0x228dde91ba6ee1b1
xor rcx, rdx
and rax, rcx
movabs rcx, 0xcedfbf742c315ca8
movabs rdx, 0xcedfbf742c315ca8
xor rcx, rdx
cmp rax, rcx
je 0x1401b6b18
mov rcx, qword [rsp + 0xa8]
call fcn.140027e50
mov rcx, qword [rsp + 0x80]
mov r8, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x60]
movabs rdx, 0x91d12de3ed53f5e4
movabs r9, 0x91d12de3ed53f5e4
xor rdx, r9
sub rdx, rax
xor eax, eax
sub rax, r8
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x48], rax
and rax, rcx
movabs rcx, 0xf790b8a4fae5a7da
movabs rdx, 0xf790b8a4fae5a7da
xor rcx, rdx
cmp rax, rcx
jge 0x1401b6c33
mov eax, dword [0x1402b3538]
xor eax, 0x311a3795
and eax, dword [0x1402b353c]
imul eax, eax, 0x5977bf1b
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x44a0e883
mov edx, 0xe2d59f15
xor edx, 0xa6757796
mov r8d, 0x4eb33401
xor r8d, 0xb14ccbfe
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0xa123df0a
xor ecx, 0x9e1a43e
and eax, ecx
cmp eax, 0x400bcb0c
jb 0x1401b6db7
mov eax, dword [0x1402b3540]
mov edx, dword [0x1402b3544]
xor edx, 0xa6b036fb
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
or eax, 0x3b6cfba7
add eax, 0xc409faa1
mov ecx, 0xa47928e1
xor ecx, 0x8a69ac34
add eax, ecx
add eax, 0x5ff60496
sub eax, 0x2e1084d5
mov dword [rsp + 0x44], eax
call fcn.14000ee80
mov eax, dword [rsp + 0x44]
cmp eax, 0xe10338b6
jae 0x1401b6db7
jmp 0x1401b6d8c
mov al, byte [rsp + 0x93]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0xa0]
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401b6c97
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
movabs r8, 0x541fd47ee9974195
movabs rdx, 0xabe02b811668be6a
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1401b6d8c
mov eax, dword [0x1402b3548]
xor eax, 0x3201ee3d
or eax, dword [0x1402b354c]
sub eax, 0x4a973e2
add eax, 0x573df561
mov ecx, 0x6f186675
xor ecx, 0xc42e673
imul eax, ecx
cmp eax, 0x1948136f
jbe 0x1401b6dc0
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x78]
mov r10, qword [rsp + 0x48]
mov r9, qword [rsp + 0x88]
mov eax, dword [0x1402b3550]
xor eax, 0x324ea57e
mov r11d, dword [0x1402b3554]
xor edx, edx
sub edx, r11d
sub eax, edx
mov r11d, 0xf2a4cc5b
xor edx, edx
div r11d
mov r11d, 0x8acc743c
xor r11d, 0x4c861a37
xor edx, edx
div r11d
mov rdx, qword [rsp + 0xc0]
and eax, 0x5f2e6698
mov r9, qword [r9]
mov r9b, byte [r9 + r10 + 8]
mov r8, qword [r8]
mov byte [r8 + rcx + 8], r9b
movabs r9, 0xd6cf0e17a826b3c0
mov r8, rcx
add r8, r9
add r8, 1
movabs r9, 0xd6cf0e17a826b3c0
sub r8, r9
mov qword [rsp + 0x28], r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x64090dbe
je 0x1401b6ccb
test al, 0x17
invalid
mov rax, qword [rsp + 0x28]
mov cl, byte [rsp + 0x37]
test cl, 1
mov qword [rsp + 0x70], rax
jne 0x1401b6d8c
jmp 0x1401b69a3
mov rax, qword [rsp + 0xb0]
add rsp, 0xc8
ret
wait
jg 0x1401b6d3a
invalid
insd dword [rdi], dx
adc eax, 0x8e9a133
sti
invalid
retf 0x35ae
invalid
sub esi, dword [rcx]
xor dword [rbx - 0x17], ecx
add bh, bh
invalid