Function at 0x140062df0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0xe8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], rcx
mov eax, 0x10
mov qword [rbp + 0x20], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x28], rax
sub rsp, 0x20
call fcn.14004e61c
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x40], rdx
movabs rdx, 0xdb9701a00a0d3179
movabs r8, 0xdb9701a00a0d3179
xor rdx, r8
mov qword [rax], rdx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x48], rdx
mov qword [rax + 8], 0
mov rcx, qword [rcx]
mov edx, 2
lea r8, [rbp + 0x60]
sub rsp, 0x20
call fcn.14004f610
add rsp, 0x20
test al, 1
jne 0x140062e9f
jmp 0x140062eb1
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x140063493
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x18], rax
cmp rax, 0
jge 0x140062ee7
mov rcx, qword [rbp + 0x18]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x140063493
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.14002c550
mov r10, qword [rbp + 0x30]
mov r8, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov r9, qword [r10]
mov qword [rbp - 8], r9
mov rdx, r10
add rdx, 8
mov qword [rbp], rdx
mov rdx, qword [r10 + 8]
mov r11, qword [r8]
mov qword [r10], r11
mov r11, qword [r8 + 8]
mov qword [r10 + 8], r11
mov qword [r8], r9
mov qword [rcx], rdx
add rax, 8
mov qword [rbp + 8], rax
xor eax, eax
mov qword [rbp + 0x10], rax
mov rcx, qword [rbp - 8]
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x10], rax
cmp rax, rcx
jge 0x14006346f
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x38]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x18], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140062faa
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x18]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x140063493
mov ecx, dword [0x140219120]
mov edx, dword [0x140219124]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov r8d, 0x6a2ba464
xor r8d, 0x95d45b9b
mov ecx, edx
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x2128ba71
xor edx, 0xded7458e
xor ecx, edx
and eax, ecx
mov edx, 0x43eece9f
xor edx, 0xbdc9ace6
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0xfe276279
and eax, ecx
and eax, 0x5141e035
mov ecx, 0xfd50b11b
xor ecx, 0x1912feae
xor edx, edx
div ecx
cmp eax, 0x6390bfa1
ja 0x14006349a
mov rcx, qword [rbp + 0x40]
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x48]
mov eax, dword [0x140219128]
mov r9d, dword [0x14021912c]
sub eax, r9d
imul rax, rax, 0x44cd51cd
shr rax, 0x3e
mov r9d, eax
add r9d, 0xab3dc3d
mov eax, r9d
xor eax, 0xaa1000c
and eax, r9d
mov rdx, qword [rdx]
shl r8, 5
mov rdx, qword [rdx + r8 + 8]
mov qword [rbp - 0x28], rdx
test rdx, rdx
sete dl
mov cl, byte [rcx]
test cl, cl
setne cl
mov byte [rbp - 0x1a], cl
or cl, dl
mov byte [rbp - 0x19], cl
cmp eax, 0x60145b41
ja 0x140063021
mov al, byte [rbp - 0x19]
test al, 1
jne 0x1400633d0
jmp 0x14006309d
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x30]
mov rax, qword [rax]
xor edx, edx
sub rdx, 0xffffffffffffffff
sub rax, rdx
and rax, rcx
mov qword [rbp - 0x30], rax
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp - 0x30]
mov qword [rbp - 0x40], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x38], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400630ff
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x140063493
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp]
mov rax, qword [rax]
add rax, 8
shl rcx, 5
add rax, rcx
mov rax, qword [rax]
movabs rcx, 0x42c8244bb6e01925
movabs rdx, 0x42c8244bb6e01925
xor rcx, rdx
cmp rax, rcx
je 0x14006316c
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
sub rsp, 0x20
call fcn.14004f7a4
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x30], rax
je 0x1400630b8
jmp 0x140063493
mov eax, dword [0x140219130]
xor eax, 0x73eda9c8
mov ecx, dword [0x140219134]
xor ecx, 0xfb5cf85f
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0xaade7435
mov ecx, 0xa56ca63c
xor ecx, 0xc49f6319
and ecx, eax
mov edx, 0x8659a882
xor edx, 0x79a6577d
xor ecx, edx
mov edx, 0xac873a0e
xor edx, 0xcd74ff2b
add eax, edx
add eax, 1
add eax, ecx
imul eax, eax, 0x2a4377c7
mov ecx, 0xa9e75e46
xor ecx, 0xd580dac
cmp eax, ecx
je 0x1400634a3
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x38]
mov r8d, dword [0x140219138]
sub r8d, dword [0x14021913c]
and r8d, r8d
mov eax, 0x7f5e0d5a
xor eax, 0x80a1f2a5
xor r8d, eax
mov eax, 0xb9fa3c67
and eax, 0xb9fa3c67
mov r9d, 0x18e9bde7
xor r9d, 0xe7164218
xor eax, r9d
and r8d, eax
xor r8d, 0xffffffff
and r8d, r8d
xor r8d, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x5f464524
mov r9d, 0xffffffff
xor r9d, 0x5f464524
or eax, r9d
and r8d, eax
xor r8d, 0xffffffff
mov eax, r8d
and eax, 0xc42e3e23
xor r8d, 0xc42e3e23
or eax, r8d
mov rdx, qword [rdx]
mov qword [rbp - 0x50], rdx
cmp rcx, rdx
setl cl
mov byte [rbp - 0x41], cl
cmp eax, 0x1d559118
jbe 0x1400631da
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1400632d4
jmp 0x140063286
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x50]
movabs rax, 0xa36f6f33bc862419
add rdx, rax
movabs rax, 0xbebe86fcd57be35c
movabs r8, 0x414179032a841ca3
xor rax, r8
add rdx, rax
movabs rax, 0xa36f6f33bc862419
sub rdx, rax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x140063493
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x48]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 8
mov ax, word [rcx]
mov word [rbp - 0x5a], ax
sub rsp, 0x20
call fcn.14002c78d
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp - 0x58], rcx
cmp rax, rcx
jl 0x14006334c
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x58]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x140063493
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x48]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 0x10
mov rsi, qword [rcx]
mov rax, qword [rcx + 8]
mov qword [rbp - 0x68], rax
sub rsp, 0x20
call fcn.1400123e0
mov r11, qword [rbp - 0x68]
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x30]
mov r8w, word [rbp - 0x5a]
mov r9, qword [rbp + 0x28]
mov r10, qword [rbp - 0x28]
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov qword [r9], rsi
mov qword [rcx], r11
sub rsp, 0x30
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.140062cc4
mov rax, qword [rbp + 0x40]
add rsp, 0x30
mov al, byte [rax]
mov cl, 0xe5
xor cl, 0xe5
cmp al, cl
je 0x1400633ee
jmp 0x140063493
mov rcx, qword [rbp - 0x10]
mov dl, byte [rbp - 0x1a]
xor eax, eax
test dl, 1
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x69], al
jne 0x140063456
jmp 0x1400633ee
mov rdx, qword [rbp - 0x10]
mov rcx, rdx
add rcx, 1
mov rax, rdx
xor rax, 0xffffffffffffffff
and rax, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rax, rdx
mov rdx, rcx
and rdx, rax
movabs r8, 0xe51012ca11e1e3c7
movabs rax, 0xe51012ca11e1e3c7
xor r8, rax
mov al, 1
cmp rdx, r8
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x69], al
jge 0x140063456
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x140063493
mov rax, qword [rbp - 0x78]
mov cl, byte [rbp - 0x69]
test cl, 1
mov qword [rbp + 0x10], rax
jne 0x140062f44
jmp 0x140063493
mov rax, qword [rbp + 0x38]
mov rcx, qword [rax]
mov qword [rbp + 0x50], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x50]
sub rsp, 0x20
call fcn.140050f30
add rsp, 0x20
lea rsp, [rbp + 0x68]
pop rsi
pop rbp
ret
std
sbb esp, ebp
in al, dx
fsub st(1), st(0)
jle 0x14006349c
invalid
or byte [rbx], cl
lahf
cwde
jmp 0x1400631da