Function at 0x140035880
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x80
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rcx
mov rdx, qword [rcx]
mov qword [rsp + 0x58], rdx
mov rax, rcx
add rax, 8
mov qword [rsp + 0x60], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x68], rax
movabs r8, 0x66475598fa161b89
movabs rcx, 0x66475598fa161b88
xor r8, rcx
mov rcx, rdx
add rcx, r8
mov qword [rsp + 0x70], rcx
movabs r8, 0xbb8a3b1b0fa60e43
movabs r9, 0x4475c4e4f059f1bc
xor r8, r9
xor rdx, r8
and rcx, rdx
mov qword [rsp + 0x78], rcx
cmp rax, 0
je 0x140035b5b
mov ecx, dword [0x1401dcae8]
mov edx, dword [0x1401dcaec]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0x7e35e2a7
xor r8d, 0x81ca1d58
xor eax, r8d
mov r9d, 0xfcdb755f
xor r9d, 0x3248aa0
mov r8d, edx
xor r8d, r9d
or eax, r8d
and edx, edx
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
and eax, 0x74f8c69d
or eax, 0x7f004a51
add eax, 0x86b74dff
cmp eax, 0xe8561718
je 0x140035c9c
mov rcx, qword [rsp + 0x78]
mov eax, dword [0x1401dcaf0]
mov r8d, dword [0x1401dcaf4]
mov edx, 0xab5a9ee4
xor edx, 0x205a92ab
xor r8d, edx
xor edx, edx
div r8d
sub eax, 0xdb9dcad4
imul esi, eax, 0x92b12813
mov edx, esi
xor edx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x23fa6629
mov r8d, 0xffffffff
xor r8d, 0x7ec6def1
mov eax, edx
and eax, 0x7ec6def1
and esi, r8d
mov r10d, r9d
and r10d, 0x7ec6def1
mov r11d, 0x73983705
xor r11d, 0x5062512c
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x7ec6def1
and edx, r8d
or eax, edx
movabs rdx, 0x2a91c4cdd55f57d6
movabs r8, 0x2a91c4cdd55f57d6
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x47], cl
cmp eax, 0xe8f2c42a
je 0x140035967
mov al, byte [rsp + 0x47]
test al, 1
jne 0x140035a87
jmp 0x140035a31
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov r8, qword [rax]
mov rcx, r8
xor rcx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
movabs r10, 0xbfffffffffffffff
xor r9, r10
or rcx, r9
movabs r9, 0xbfffffffffffffff
and r8, r9
xor r8, 0xffffffffffffffff
and rcx, r8
xor rcx, 0xffffffffffffffff
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jl 0x140035b5b
jmp 0x140035c72
mov eax, dword [0x1401dcaf8]
mov edx, dword [0x1401dcafc]
xor edx, 0xe93ea52
mov ecx, eax
xor ecx, edx
mov r8d, 0xb4d76e58
xor r8d, 0x4b2891a7
xor ecx, r8d
or eax, edx
and eax, ecx
mov ecx, 0xe0b8d491
xor ecx, 0x96da7657
imul eax, ecx
sub eax, 0x9a41874e
add eax, 0x10ca6a8
add eax, 0x9a41874e
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x5c446ee8
xor ecx, 0xfd893c3d
mov edx, 0x3027975e
xor edx, 0xcfd868a1
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xa1cd52d5
and ecx, edx
mov edx, 0x956e8daa
xor edx, 0x6a917255
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x10cfb7cc
je 0x140035ca5
mov eax, dword [0x1401dcb00]
xor edx, edx
div dword [0x1401dcb04]
and eax, 0xe339ca5d
mov ecx, 0x6e078921
xor ecx, 0xc279fb20
or eax, ecx
mov ecx, 0x93c5ed1f
xor edx, edx
div ecx
mov dword [rsp + 0x34], eax
call fcn.1400067fe
mov eax, dword [rsp + 0x34]
cmp eax, 0xa7b8e5b0
ja 0x140035b15
jmp 0x140035c93
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
mov r8d, 1
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.140011560
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x78]
mov qword [rdx], rax
cmp rcx, 0
mov qword [rsp + 0x38], rax
jge 0x140035c72
mov ecx, dword [0x1401dcb08]
mov edx, dword [0x1401dcb0c]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov r8d, 0xd794ded5
xor r8d, 0x286b212a
mov ecx, edx
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x55464b22
xor ecx, 0x2f128ea9
xor edx, edx
div ecx
mov ecx, 0x558ebaeb
xor edx, edx
div ecx
mov ecx, 0x66c0f7ee
xor ecx, 0x51773a7d
imul eax, ecx
cmp eax, 0xd62d4092
jae 0x140035cae
mov ecx, dword [0x1401dcb10]
mov r8d, dword [0x1401dcb14]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor ecx, 0xffffffff
mov r8d, 0xa2bfcb8b
xor r8d, 0x5d403474
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
add eax, 0xf947f919
mov ecx, 0x8ce7c11f
xor edx, edx
div ecx
xor eax, 0xf64f9809
mov dword [rsp + 0x30], eax
call fcn.1400067fe
mov eax, dword [rsp + 0x30]
cmp eax, 0x19549cd6
je 0x140035cae
jmp 0x140035c93
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0x70]
mov rax, qword [rsp + 0x38]
mov qword [r8], r9
mov qword [rax + rcx*8 + 8], rdx
add rsp, 0x80
pop rsi
ret
enter 0x4598, 0x2a
jmp 0x140035967
invalid
scasb al, byte [rdi]
cmpsb byte [rsi], byte [rdi]
wait
std
jmp 0x140035c01