Function at 0x140108da0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
mov rax, qword [rdx]
mov qword [rsp + 0x80], rax
cmp rax, 0
jle 0x1401092f8
mov r9, qword [rsp + 0x80]
mov rax, r9
add rax, 1
mov qword [rsp + 0x68], rax
mov rdx, r9
xor rdx, 0xffffffffffffffff
movabs rcx, 0x6f774993df36db25
movabs r8, 0xdccfc765451aa9a6
xor rcx, r8
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0xb3b88ef69a2c7283
xor r10, rdx
and r9, r10
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0xb3b88ef69a2c7283
and rdx, r8
movabs r8, 0xbaa86bc51acaa40e
movabs r11, 0x4557943ae5355bf1
xor r8, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
and rax, rcx
movabs rcx, 0xa9f3aa4fb942bd7
movabs rdx, 0xa9f3aa4fb942bd7
xor rcx, rdx
cmp rax, rcx
jge 0x140108fcb
mov eax, dword [0x140257670]
add eax, dword [0x140257674]
sub eax, 0x9257fabf
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, 0x8ffbb679
xor eax, 0xf475bce2
mov edx, 0x1d7d2f65
xor edx, 0xe282d09a
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x7b8e0a9b
and eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov edx, 0xc850d01e
xor edx, 0x37af2fe1
mov eax, ecx
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x51a300de
xor ecx, 0xeef4aad3
mov edx, 0xa1b51c99
xor edx, 0x1ee2b694
and ecx, edx
mov edx, 0x76ee6c46
xor edx, 0x891193b9
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x8f31eb49
jb 0x140109396
mov r11d, dword [0x140257678]
mov ecx, dword [0x14025767c]
mov eax, r11d
add eax, 1
mov edx, 0x54ea4f19
xor edx, 0xab15b0e6
xor r11d, edx
or r11d, ecx
add r11d, eax
mov eax, 0x7b6bd085
xor eax, 0xaeec9011
imul r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf6d16624
mov r8d, 0xffffffff
xor r8d, 0x9243a0c1
mov eax, ecx
and eax, 0x9243a0c1
and r11d, r8d
mov r9d, edx
and r9d, 0x9243a0c1
mov r10d, 0xae1a8e26
xor r10d, 0x58cbe802
and r10d, r8d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x9d0d4515
xor edx, 0xf4ee5d4
or edx, r8d
and ecx, edx
or eax, ecx
sub eax, 0x8687ceb2
mov dword [rsp + 0x64], eax
mov eax, 0xd6f6ea01
xor eax, 0xb8d0a410
mov dword [rsp + 0x60], eax
call fcn.140007e9d
mov ecx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x64]
cmp eax, ecx
jbe 0x140109396
jmp 0x1401092f8
mov rax, qword [rsp + 0x68]
cmp rax, 0
jge 0x140109017
mov rcx, qword [rsp + 0x68]
movabs rdx, 0x1fb4f433a62b344c
movabs rax, 0x1fb4f433a62b344c
xor rdx, rax
movabs r8, 0xda1e1b9664f47b8e
movabs rax, 0xa5e1e4699b0b8471
xor r8, rax
call fcn.14000cee2
jmp 0x1401092f8
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rdx + 8]
add rcx, 8
add rcx, qword [rdx]
mov qword [rsp + 0x48], rcx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov eax, dword [0x140257680]
add eax, dword [0x140257684]
mov ecx, 0xa92985df
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x3aa0b195
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0x2dd9c7a3
cmp eax, 0x17dd99c3
jb 0x14010939f
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x68]
mov r8d, dword [0x140257688]
mov eax, dword [0x14025768c]
add r8d, 0xd3b3c5c7
sub r8d, eax
mov eax, 0xc74eea2c
xor eax, 0x14fd2feb
sub r8d, eax
sub r8d, 0xa5d1f85b
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x293cbcdf
mov r9d, 0xffffffff
xor r9d, 0x293cbcdf
and r8d, r9d
or eax, r8d
imul eax, eax, 0x93e85768
cmp rcx, rdx
sete cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x2d3e6
jbe 0x14010939f
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x140109133
jmp 0x140109106
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov dl, byte [rdx + rcx]
mov byte [rax + rcx], dl
mov rax, rcx
and rax, 1
or rcx, 1
add rax, rcx
mov qword [rsp + 0x58], rax
jmp 0x140109045
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov r9, qword [rcx]
mov rcx, qword [rax]
movabs rax, 0xd90b3d5972712a07
movabs rdx, 0xd90b3d5972712a07
xor rax, rdx
sub rax, r9
mov rdx, rcx
sub rdx, rax
mov qword [rsp + 0x30], rdx
movabs r8, 0x5d7c6d062c814357
movabs rax, 0xa28392f9d37ebca8
xor r8, rax
mov rax, rdx
xor rax, r8
movabs r10, 0x9fc9ce53fc8a4e06
movabs r8, 0x603631ac0375b1f9
xor r10, r8
mov r8, rdx
xor r8, r10
or rax, r8
xor rax, 0xffffffffffffffff
mov r8, r9
xor r8, 0xffffffffffffffff
or rax, r8
and r9, r9
xor r9, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
xor rax, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rax, r8
xor rdx, rcx
or rax, rax
movabs rcx, 0xb1ab6c2d71c32ccc
movabs r8, 0x4e5493d28e3cd333
xor rcx, r8
xor rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jge 0x1401092eb
mov eax, dword [0x140257690]
or eax, dword [0x140257694]
mov ecx, 0x3ea6a168
xor ecx, 0xa98ebe9f
xor edx, edx
div ecx
mov ecx, 0x8d237c37
xor edx, edx
div ecx
sub eax, 0x6d5549ed
sub eax, 0xc735c6de
mov ecx, 0x6a4af65
xor ecx, 0x6bf1e688
add eax, ecx
cmp eax, 0x450e696e
je 0x1401093a8
mov r8d, dword [0x140257698]
mov edx, dword [0x14025769c]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x91f1ed5a
mov r9d, 0x34e18fd
xor r9d, 0x92bff5a7
mov ecx, 0xfa772081
xor ecx, 0x588df7e
xor r9d, ecx
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
mov r10d, 0xd0f8423d
xor r10d, 0x4109af67
and ecx, r10d
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
xor ecx, ecx
sub ecx, 0x19ff0510
add eax, ecx
xor ecx, ecx
sub ecx, 0x6fb74d50
sub eax, ecx
mov ecx, 0xd0d9874
xor ecx, 0x109d328e
and eax, ecx
mov dword [rsp + 0x2c], eax
call fcn.140007e9d
mov eax, dword [rsp + 0x2c]
cmp eax, 0xb800e104
je 0x1401093a8
jmp 0x1401092f8
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
mov eax, dword [0x1402576a0]
xor edx, edx
div dword [0x1402576a4]
mov edx, eax
and edx, 0x3214f216
mov ecx, 0xdd5702de
xor ecx, 0xdd5702dc
imul ecx, edx
add eax, 0x3214f216
sub eax, ecx
sub eax, 0x721ee4fe
mov ecx, 0x6907731e
xor ecx, 0xabec9e76
add eax, ecx
add eax, 0x721ee4fe
add eax, 0x7400853d
cmp eax, 0xe76050d7
ja 0x1401093b1
mov eax, dword [0x1402576a8]
xor edx, edx
div dword [0x1402576ac]
mov ecx, eax
mov eax, 0xc2337781
xor eax, 0xf70ad044
sub ecx, eax
mov edx, 0xe2642abc
xor edx, 0xa492fea3
mov eax, ecx
and eax, edx
or ecx, 0x46f6d41f
add eax, ecx
imul eax, eax, 0xae5dad54
cmp eax, 0x90ed914c
jb 0x14010934a
add rsp, 0x88
ret
rol byte [rdx + 0x64e94bf2], 0xfb
invalid
invalid
invalid
adc dh, ah
invalid
ja 0x1401093a6
retf