Function at 0x14008d350
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0xb0
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rcx
mov rax, qword [r8]
mov qword [rsp + 0xa0], rax
mov r9, qword [rdx]
mov rdx, qword [r8 + 8]
mov rcx, r9
sub rcx, rdx
mov qword [rsp + 0xa8], rcx
movabs r8, 0x5a94229889fc0106
movabs rax, 0xa56bdd677603fef9
xor r8, rax
mov rax, rcx
xor rax, r8
mov r8, rcx
xor r8, 0xffffffffffffffff
and rax, r8
movabs r10, 0x9c9a24468e6b35b3
movabs r8, 0x6365dbb97194ca4c
xor r10, r8
mov r8, r9
xor r8, r10
mov r10, r9
xor r10, 0xffffffffffffffff
and r8, r10
xor rax, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rax, r8
mov r8, rcx
or r8, r9
xor r8, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r9, 0x9279ffeae0452b1c
movabs r10, 0x6d8600151fbad4e3
xor r9, r10
xor r8, r9
and rax, r8
cmp rax, 0
setl al
xor rcx, rdx
movabs rdx, 0xc5b3fc22256bf198
movabs r8, 0x3a4c03ddda940e67
xor rdx, r8
cmp rcx, rdx
setg cl
and al, cl
test al, 1
jne 0x14008d44a
jmp 0x14008d454
call fcn.140007f57
jmp 0x14008d995
mov rdx, qword [rsp + 0xa0]
mov r9, qword [rsp + 0xa8]
movabs rax, 0x9c3dd814930e0055
movabs rcx, 0x63c227eb6cf1ffaa
xor rax, rcx
mov rcx, r9
xor rcx, rax
and rcx, rdx
mov r8, rdx
xor r8, 0xffffffffffffffff
mov rax, r9
and rax, r8
sub rax, rcx
mov qword [rsp + 0x80], rax
movabs r8, 0xf66af1141b961416
movabs rcx, 0x9950eebe469ebe9
xor r8, rcx
mov rcx, rax
xor rcx, r8
movabs r8, 0xca008cafd1693671
and rcx, r8
movabs r11, 0xd0ac9ec1dcbea95b
movabs r8, 0x1aac126e0dd79f2a
xor r11, r8
movabs r8, 0xacaf3ea4aaaabce7
movabs r10, 0x5350c15b55554318
xor r8, r10
xor r11, r8
mov r10, rax
and r10, r11
movabs rsi, 0xcf7acd21565a9d5e
movabs r8, 0x308532dea9a562a1
xor rsi, r8
mov r8, r9
xor r8, rsi
movabs rsi, 0xca008cafd1693671
and r8, rsi
and r9, r11
or rcx, r10
or r8, r9
xor rcx, r8
movabs r8, 0x59ae65b86853de36
movabs r9, 0x59ae65b86853de36
xor r8, r9
cmp rcx, r8
setl cl
xor rax, rdx
cmp rax, 0xffffffffffffffff
setg dl
xor eax, eax
xor al, 1
xor dl, al
mov al, cl
xor al, dl
and al, cl
test al, 1
jne 0x14008d573
jmp 0x14008d57d
call fcn.140007f57
jmp 0x14008d995
mov rcx, qword [rsp + 0x80]
xor eax, eax
mov edx, eax
sub rdx, 1
mov rax, rcx
sub rax, rdx
mov qword [rsp + 0x78], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x171e1acd76a7638d
movabs rdx, 0x171e1acd76a7638d
xor rcx, rdx
cmp rax, rcx
jge 0x14008d5c9
call fcn.140007f57
jmp 0x14008d995
mov rax, qword [rsp + 0x78]
cmp rax, 0
jge 0x14008d5f5
mov rcx, qword [rsp + 0x78]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000dc65
jmp 0x14008d995
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x78]
call fcn.14001a990
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0xa0]
mov r8, rax
xor r8, 0xffffffffffffffff
mov qword [rsp + 0x50], r8
add rdx, 8
mov qword [rsp + 0x58], rdx
add rcx, 8
mov qword [rsp + 0x60], rcx
movabs rcx, 0xfe6d028a88b4a3ff
movabs rdx, 0x192fd75774b5c00
xor rcx, rdx
cmp rax, rcx
setg al
mov byte [rsp + 0x6f], al
xor eax, eax
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x48], rax
cmp rax, rcx
je 0x14008d995
mov eax, dword [0x140204568]
xor eax, 0xbdcee5ad
sub eax, dword [0x14020456c]
xor ecx, ecx
sub ecx, eax
mov eax, 0x5ce3f602
xor eax, 0x5ce3f602
mov edx, 0x8207033d
xor edx, 0x31688997
sub eax, edx
add ecx, eax
mov eax, 0x22bef738
xor eax, 0x22bef738
sub eax, ecx
mov ecx, 0x46e9be7c
xor ecx, 0x5d814926
add eax, ecx
mov edx, 0x39b4c9ea
xor edx, 0x8149ac20
mov ecx, eax
and ecx, edx
shl ecx, 1
mov edx, 0x8c9c70a3
xor edx, 0x34611569
add eax, edx
sub eax, ecx
mov ecx, 0x73ce5355
xor ecx, 0x5509528e
cmp eax, ecx
jbe 0x14008da2a
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x90]
mov eax, dword [0x140204570]
xor eax, 0x975c3492
mov r9d, dword [0x140204574]
xor r9d, 0x8412a3f0
mov r8d, eax
and r8d, r9d
xor eax, r9d
or r8d, eax
mov eax, r8d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0x2f881800
and r8d, 0x2f881800
xor r8d, 0xffffffff
mov r9d, 0x87139006
xor r9d, 0x78ec6ff9
xor eax, r9d
xor r8d, 0xffffffff
or eax, r8d
mov r9d, 0xd867b5eb
xor r9d, 0x339b33bb
mov r8d, 0x2d60c0af
xor r8d, 0xd29f3f50
xor r9d, r8d
mov r8d, eax
and r8d, r9d
mov r9d, eax
xor r9d, 0xebfc8650
add eax, r9d
sub eax, r8d
mov r8d, eax
add r8d, 1
xor eax, 0xffffffff
or eax, 0x82fa606d
add eax, r8d
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x47], cl
cmp eax, 0x906f1c51
je 0x14008da2a
mov al, byte [rsp + 0x47]
test al, 1
jne 0x14008d87d
jmp 0x14008d7d2
mov eax, dword [0x140204578]
mov edx, dword [0x14020457c]
mov ecx, eax
add ecx, 1
mov r8d, 0xe3db80b3
xor r8d, 0x1c247f4c
xor eax, r8d
or eax, edx
add eax, ecx
sub eax, 0xbd127f57
mov ecx, 0x1d6255b1
xor ecx, 0x1d6255b1
sub ecx, eax
mov eax, 0xc98255ea
xor eax, 0xc98255ea
mov edx, 0xffa50345
xor edx, 0x76eefc7f
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0xb4447e26
cmp eax, 0x1c5a1246
jb 0x14008da33
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x38]
mov eax, dword [0x140204580]
or eax, dword [0x140204584]
imul eax, eax, 0xab6f3f13
and eax, 0x7bebc863
or eax, 0x6965d1b4
mov dword [rsp + 0x34], eax
add rdx, 0xffffffffffffffff
call fcn.140014583
mov eax, dword [rsp + 0x34]
cmp eax, 0x83175643
je 0x14008da33
jmp 0x14008d995
mov rcx, qword [rsp + 0x90]
call fcn.14008da45
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
xor rdx, 0xffffffffffffffff
movabs r8, 0xabe4e4ddfb1ccd60
movabs r9, 0xabe4e4ddfb1ccd60
xor r8, r9
movabs r9, 0xf75d698ce89f86cf
movabs r10, 0xf75d698ce89f86ce
xor r9, r10
sub r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x28], rax
and rax, rcx
cmp rax, 0
jge 0x14008d8f3
call fcn.140007f57
jmp 0x14008d995
mov al, byte [rsp + 0x6f]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x88]
mov rdx, qword [rdx]
mov qword [rsp + 0x20], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14008d964
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
movabs rax, 0xaa563a44759ab631
add rdx, rax
movabs rax, 0x65e1430a68f67e50
movabs r8, 0x9a1ebcf5970981af
xor rax, r8
add rdx, rax
movabs rax, 0xaa563a44759ab631
sub rdx, rax
call fcn.140014583
jmp 0x14008d995
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
add rax, 1
mov qword [rsp + 0x70], rax
jmp 0x14008d665
mov eax, dword [0x140204588]
sub eax, dword [0x14020458c]
mov ecx, 0xdd141392
xor edx, edx
div ecx
imul ecx, eax, 0x23941f51
mov eax, ecx
and eax, 0xe5b98af1
or ecx, 0xe5b98af1
add eax, ecx
cmp eax, 0xa47d3b4e
jbe 0x14008da3c
mov eax, dword [0x140204590]
or eax, dword [0x140204594]
sub eax, 0x387f5502
xor ecx, ecx
sub ecx, 0x32a7909d
sub eax, ecx
mov ecx, 0xd0a1108a
xor ecx, 0x128bd91b
mov edx, 0x56bc9d6f
xor edx, 0xa9436290
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xd2df8c0f
xor ecx, 0x9a7cf8be
cmp eax, ecx
je 0x14008d9ca
mov rax, qword [rsp + 0x98]
add rsp, 0xb0
pop rsi
ret
sbb dl, byte [rbx - 0x3a16302e]
cld
invalid
mov bl, 0x17
push rcx
jmp 0x14008d836
fiadd dword [rbx + 0x40]
sti
jmp 0x14008d9ca