Function at 0x14002a830
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x90
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov r8, qword [rcx]
mov qword [rsp + 0x68], r8
mov rax, rcx
add rax, 8
mov qword [rsp + 0x70], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x78], rax
mov rcx, r8
and rcx, 1
movabs r9, 0x67590ab861fd8b9b
movabs rdx, 0x67590ab861fd8b9a
xor r9, rdx
mov rdx, r8
or rdx, r9
add rcx, rdx
mov qword [rsp + 0x80], rcx
xor r8, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs rdx, 0x8772c0b8bc1f5866
movabs r9, 0xa516c9f76139b106
xor rdx, r9
movabs r9, 0xdd8f1885e504daf5
movabs r10, 0x2270e77a1afb250a
xor r9, r10
xor rdx, r9
or rcx, r8
movabs r8, 0x2264094fdd26e960
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
mov qword [rsp + 0x88], rcx
cmp rax, 0
je 0x14002a963
mov rax, qword [rsp + 0x88]
movabs rcx, 0x3fbf46032d36e8ee
movabs rdx, 0x3fbf46032d36e8ee
xor rcx, rdx
cmp rax, rcx
jl 0x14002a959
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rax]
movabs r8, 0x674e8b86f6dc6efa
movabs r9, 0xd8b1747909239105
xor r8, r9
and rcx, r8
cmp rcx, rdx
mov qword [rsp + 0x50], rax
jl 0x14002a963
jmp 0x14002aaa3
call fcn.140008bc6
jmp 0x14002ab87
mov eax, dword [0x140217628]
mov ecx, 0xe2561aae
xor ecx, 0x1adce10d
xor eax, ecx
mov r8d, dword [0x14021762c]
mov ecx, 0x65f1f0ea
xor ecx, 0x9a0e0f15
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe63b2565
xor edx, edx
div ecx
mov ecx, 0x3cc18e0c
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x5e2b949f
xor ecx, 0xffffffff
or eax, 0x5e2b949f
and eax, ecx
mov ecx, 0xdb07741e
xor ecx, 0xe45ff3bc
cmp eax, ecx
jae 0x14002ab90
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
mov eax, dword [0x140217630]
mov r9d, dword [0x140217634]
xor r8d, r8d
sub r8d, eax
mov eax, 0x1eecd70
xor eax, 0x1eecd70
sub eax, r9d
add r8d, eax
xor eax, eax
sub eax, r8d
xor r8d, r8d
sub r8d, 0xd5c7dc48
add eax, r8d
imul eax, eax, 0x19d0b8b1
imul eax, eax, 0x4ebf11e0
mov dword [rsp + 0x3c], eax
mov r8d, 1
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.140013020
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x88]
mov r8, rax
mov eax, dword [rsp + 0x3c]
mov qword [rsp + 0x40], r8
mov qword [rdx], r8
cmp rcx, 0
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xb3daea18
jae 0x14002a9e2
mov rax, qword [rsp + 0x40]
mov cl, byte [rsp + 0x4f]
test cl, 1
mov qword [rsp + 0x50], rax
jne 0x14002aa99
jmp 0x14002aaa3
call fcn.140008bc6
jmp 0x14002ab87
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov eax, dword [0x140217638]
mov ecx, dword [0x14021763c]
xor ecx, 0x4f50cc4a
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0xb49a3b44
add eax, ecx
or eax, 0xeb0bf254
mov ecx, 0x51dadcb2
xor ecx, 0x15f385de
xor edx, edx
div ecx
cmp eax, 0xc509b308
jae 0x14002ab99
mov rcx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x80]
mov eax, dword [0x140217640]
add eax, dword [0x140217644]
sub eax, 0x2fafbf13
add eax, 0xfcf13900
add eax, 0x2fafbf13
mov r11d, 0x4fc13c48
xor r11d, 0xc3f5904d
xor edx, edx
div r11d
mov rdx, qword [rsp + 0x68]
mov r11d, eax
mov eax, r11d
or eax, 0xe0725d51
mov esi, 0x59d82726
xor esi, 0xa627d8d9
xor eax, esi
mov esi, 0x919035bd
xor esi, 0x71e268ec
or r11d, esi
mov esi, 0x1e61d974
xor esi, 0xe19e268b
xor r11d, esi
or eax, r11d
xor eax, 0xffffffff
mov qword [r9], r10
mov qword [rcx + rdx*8 + 8], r8
cmp eax, 0xa992d707
jb 0x14002aaec
jmp 0x14002ab87
add rsp, 0x90
pop rsi
ret
cld
out 0x1f, eax
and cl, ch
invalid
push rdi
adc eax, 0x4ae970cf
invalid