Function at 0x14005b370
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov qword [rbp + 8], r8
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x10], rcx
mov eax, 0x10
mov qword [rbp + 0x18], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x18]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x18]
mov rcx, rsp
mov qword [rbp + 0x20], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x28], rax
sub rsp, 0x20
call fcn.140051260
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x40], rax
mov rax, qword [rdx]
mov qword [rcx], rax
mov rax, qword [rdx + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14003ce10
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x48], rcx
cmp byte [rax], 0
jne 0x14005b821
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x48]
movabs r9, 0x72f97186e53c8051
movabs r8, 0x72f97186e53c8051
xor r9, r8
mov r8d, 0x747392d0
cmp rdx, r9
cmove rdx, r8
mov qword [rbp - 0x10], rdx
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp - 8], rcx
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rbp], rax
je 0x14005b821
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
add rcx, 0xffffffffffffffff
and rcx, rdx
add rax, 8
mov qword [rbp - 0x28], rax
mov rax, 0xffffffffffffffff
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x18]
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x30], rax
mov r11d, dword [0x1401f3ec0]
mov eax, 0xff0ca0a7
xor eax, 0xf0c4c71e
xor r11d, eax
mov r10d, dword [0x1401f3ec4]
mov eax, 0x472dfbb5
xor eax, 0xb8d2044a
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x79d389ec
mov eax, ecx
and eax, 0x79d389ec
and r11d, edx
mov r9d, r8d
and r9d, 0x79d389ec
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x2febb8b1
xor r8d, 0xd014474e
xor ecx, r8d
or edx, 0x79d389ec
and ecx, edx
or eax, ecx
or eax, 0x7131a085
add eax, 0xc131bcb3
mov ecx, 0x88a17e01
xor ecx, 0x393e7ee4
sub eax, ecx
cmp eax, 0xd915af85
je 0x14005b8b5
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp + 0x10]
mov eax, 0xa6cd3885
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rbp - 0x48], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rbp - 0x39], cl
cmp eax, 0xb6aaa41c
jae 0x14005b53a
mov al, byte [rbp - 0x39]
test al, 1
jne 0x14005b5a0
jmp 0x14005b57a
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140016582
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov qword [rbp], rax
jmp 0x14005b821
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
add rax, 8
shl rcx, 5
add rax, rcx
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
cmp rax, 0
je 0x14005b7a0
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp + 8]
cmp rax, qword [rcx]
jne 0x14005b736
mov ecx, dword [0x1401f3ed0]
sub ecx, dword [0x1401f3ed4]
mov eax, ecx
and eax, 0x56c0a3fe
xor ecx, 0x56c0a3fe
or eax, ecx
mov ecx, 0xa012921f
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
mov edx, 0x8d1f6bc9
xor edx, 0x72e09436
xor eax, edx
mov edx, 0xa0b5c475
xor edx, 0xf4225b0
mov r8d, 0xd6aadaa9
xor r8d, 0x29552556
xor edx, r8d
or eax, edx
mov edx, 0xffffffff
xor edx, 0xaff7e1c5
mov r8d, 0xa635e300
xor r8d, 0x9c202c5
mov r9d, 0xb1a995bf
xor r9d, 0x4e566a40
xor r8d, r9d
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xe166bfb
jb 0x14005b8be
mov rcx, qword [rbp + 0x20]
mov r9, qword [rbp - 0x30]
mov r8, qword [rbp - 0x58]
mov eax, dword [0x1401f3ed8]
xor edx, edx
div dword [0x1401f3edc]
mov rdx, qword [rbp + 0x28]
mov r10d, eax
mov rax, qword [rbp + 0x30]
xor r11d, r11d
sub r11d, 0x7d399821
sub r10d, r11d
mov r11d, 0x2c9fdfc4
xor r11d, 0xf327cb95
and r10d, r11d
imul r10d, r10d, 0x1f2db92
mov dword [rbp - 0x60], r10d
add r8, 8
shl r9, 5
add r8, r9
add r8, 8
mov r9, qword [r8]
mov qword [rcx], r9
mov r8, qword [r8 + 8]
mov qword [rcx + 8], r8
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400673dd
add rsp, 0x20
mov cl, al
mov eax, dword [rbp - 0x60]
mov byte [rbp - 0x59], cl
cmp eax, 0x18a9f2b3
je 0x14005b679
mov rcx, qword [rbp - 0x30]
mov dl, byte [rbp - 0x59]
xor eax, eax
test dl, 1
mov rdx, rcx
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x70], rcx
mov byte [rbp - 0x61], al
jne 0x14005b778
jmp 0x14005b736
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140052130
mov r8, qword [rbp + 0x40]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp - 0x38]
mov cl, 1
cmp byte [r8], 0
mov qword [rbp - 0x78], rdx
mov rdx, rax
mov qword [rbp - 0x70], rdx
mov byte [rbp - 0x61], cl
mov qword [rbp], rax
jne 0x14005b821
mov rcx, qword [rbp - 0x78]
mov rax, qword [rbp - 0x70]
mov dl, byte [rbp - 0x61]
test dl, 1
mov qword [rbp - 0x20], rcx
mov rcx, rax
mov qword [rbp - 0x18], rcx
mov qword [rbp], rax
jne 0x14005b48f
jmp 0x14005b821
mov rcx, qword [rbp - 0x30]
mov rax, rcx
or rax, rax
movabs rdx, 0x6b88856cd1822ce8
movabs r8, 0x94777a932e7dd317
xor rdx, r8
xor rax, rdx
movabs rdx, 0x82e5b99cf46db44e
movabs r8, 0x7d1a46630b924bb1
xor rdx, r8
movabs r8, 0x6b2ec249fbeef709
movabs r9, 0x94d13db6041108f6
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rax, rdx
xor rax, 0xffffffffffffffff
or rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp - 0x80], rax
mov ecx, dword [0x1401f3ee0]
xor ecx, 0x7bf25408
or ecx, dword [0x1401f3ee4]
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x6675967a
mov edx, 0xffffffff
xor edx, 0x6675967a
and ecx, edx
or eax, ecx
mov ecx, 0xa92334d5
xor edx, edx
div ecx
xor eax, 0x71798260
mov ecx, 0x997aabe3
xor ecx, 0x33c6c456
cmp eax, ecx
jae 0x14005b8c7
mov eax, dword [0x1401f3ee8]
mov ecx, dword [0x1401f3eec]
mov edx, 0x874abc19
xor edx, 0x31a68d2b
xor ecx, edx
imul eax, ecx
or eax, 0x46ec4a08
add eax, 0xc413d83
sub eax, 0x69ef1ff1
cmp eax, 0xbfc54799
je 0x14005b875
mov rax, qword [rbp - 0x80]
lea rsp, [rbp + 0x50]
pop rbp
ret
xor eax, dword [rdx - 0x69]
in eax, 0xe9
jl 0x14005b8b8
invalid
sbb ch, dl
invalid
movsd dword [rdi], dword [rsi]
invalid