Function at 0x14014a6e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xa0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x18], rcx
mov eax, dword [0x140253fe8]
mov ecx, dword [0x140253fec]
xor ecx, 0x6e80fe61
add eax, ecx
mov ecx, 0x9e43d726
xor ecx, 0x9e43d726
mov edx, 0x9d4fe3fc
xor edx, 0xe3186453
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0x436e23b9
add eax, ecx
mov edx, 0x1f08618e
xor edx, 0x7118f250
mov ecx, 0x25c8a102
xor ecx, 0xda375efd
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x6e1093de
add eax, edx
sub eax, ecx
mov ecx, 0x98b707df
xor ecx, 0xa8b0b713
cmp eax, ecx
je 0x14014b02f
mov eax, dword [0x140253ff0]
mov ecx, dword [0x140253ff4]
sub eax, ecx
add eax, 0x58822743
imul rax, rax, 0x673081
shr rax, 0x35
or eax, 0x737a7a50
mov dword [rbp + 0x10], eax
mov eax, 0x10
mov qword [rbp - 0x10], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x10]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x10]
mov rcx, rsp
mov qword [rbp - 0x20], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x10]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp - 0x10]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp], rax
sub rsp, 0x20
call fcn.140148555
add rsp, 0x20
mov qword [rbp + 8], rax
sub rsp, 0x20
call fcn.140147a90
mov rcx, qword [rbp + 8]
mov eax, dword [rbp + 0x10]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x17], cl
cmp eax, 0x8462c
jb 0x14014a767
mov al, byte [rbp + 0x17]
test al, 1
jne 0x14014a83a
jmp 0x14014b029
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x28]
mov qword [rax], 0
mov ax, 0x67c6
xor ax, 0x61ac
mov word [rcx], ax
sub rsp, 0x20
call fcn.140061b50
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 8]
mov qword [rbp - 0x30], rcx
cmp byte [rax], 0
jne 0x14014b029
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
mov qword [rbp - 0x40], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x38], rax
mov ecx, 0x546
sub rsp, 0x20
call fcn.140062760
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 8]
mov dword [rcx], edx
mov al, byte [rax]
mov cl, 0xfd
xor cl, 0xfd
cmp al, cl
jne 0x14014b029
mov ecx, 0x59
sub rsp, 0x20
call fcn.140062638
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov dx, ax
mov rax, qword [rbp + 8]
mov word [rcx + 4], dx
cmp byte [rax], 0
jne 0x14014b029
mov ecx, 0x791
sub rsp, 0x20
call fcn.140062638
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov dx, ax
mov rax, qword [rbp + 8]
mov word [rcx + 6], dx
mov al, byte [rax]
mov cl, 0xcd
xor cl, 0xcd
cmp al, cl
jne 0x14014b029
mov ecx, 0x70d
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x41], cl
cmp byte [rax], 0
jne 0x14014b029
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x41]
mov byte [rax + 8], cl
mov ecx, 0x235
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x42], cl
mov al, byte [rax]
mov cl, 0xb0
xor cl, 0xb0
cmp al, cl
jne 0x14014b029
mov eax, dword [0x140253ff8]
mov ecx, 0xd8b42a58
xor ecx, 0x7e7c66cb
xor eax, ecx
mov ecx, dword [0x140253ffc]
xor ecx, 0x8ba2f30a
or eax, ecx
mov ecx, eax
xor ecx, 0xf442a902
mov edx, 0xffffffff
xor edx, 0xf442a902
and eax, edx
shl eax, 1
sub eax, ecx
or eax, 0xb6ff0824
mov ecx, 0xfa665ddf
xor edx, edx
div ecx
cmp eax, 0x5ffabd7c
ja 0x14014b038
mov cl, byte [rbp - 0x42]
mov eax, dword [0x140254000]
mov r8d, dword [0x140254004]
xor r8d, 0xcaaf58cf
xor edx, edx
div r8d
xor eax, 0xb01e3906
mov r8d, 0xaee77a87
xor edx, edx
div r8d
mov r8d, 0xb583f9b7
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x48], edx
mov byte [rax + 9], cl
mov cx, 0xe2cf
xor cx, 0xe1bd
sub rsp, 0x20
call fcn.140062ce5
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp - 0x48]
mov byte [rbp - 0x44], dl
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x43], cl
cmp eax, 0x8e8dbde7
je 0x14014a9bb
mov al, byte [rbp - 0x43]
test al, 1
jne 0x14014aa44
jmp 0x14014b029
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x44]
mov byte [rax + 0xa], cl
mov ecx, 0x100
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x49], cl
cmp byte [rax], 0
jne 0x14014b029
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x49]
mov byte [rax + 0xb], cl
mov cx, 0xb3aa
xor cx, 0xb23d
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x4a], cl
cmp byte [rax], 0
jne 0x14014b029
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x4a]
mov byte [rax + 0xc], cl
mov ecx, 0x19f
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x4b], cl
mov al, byte [rax]
mov cl, 0x51
xor cl, 0x51
cmp al, cl
jne 0x14014b029
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x4b]
mov byte [rax + 0xd], cl
mov ecx, 0x8f
sub rsp, 0x20
call fcn.140062ce5
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 8]
mov byte [rbp - 0x4c], cl
cmp byte [rax], 0
jne 0x14014b029
mov ecx, dword [0x140254008]
mov edx, dword [0x14025400c]
xor ecx, 0xffffffff
xor edx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x437833ae
or ecx, edx
or eax, 0x437833ae
mov edx, 0x6ad5d9bd
xor edx, 0x952a2642
xor ecx, edx
and ecx, eax
add ecx, 0xa151e40f
mov eax, 0x3b1dac8e
xor eax, 0x72cce82f
add ecx, eax
sub ecx, 0xa151e40f
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7ce50a3a
mov r8d, 0xffffffff
xor r8d, 0x7ce50a3a
and edx, r8d
or eax, edx
xor eax, 0xffffffff
or ecx, 0x7ce50a3a
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 0x98efa138
cmp eax, 0xd6fd5f66
jb 0x14014b041
mov cl, byte [rbp - 0x4c]
mov eax, dword [0x140254010]
mov r8d, dword [0x140254014]
xor r8d, 0xa0d46aa4
mov edx, r8d
and edx, eax
xor edx, 0xffffffff
add eax, r8d
add eax, 1
add eax, edx
mov edx, 0x9a2cd7dd
xor edx, 0x801e2f1e
add eax, edx
mov r8d, 0x1b70a1a0
xor edx, edx
div r8d
mov r8d, 0x71965039
xor r8d, 0xb60c0e8c
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x18]
mov dword [rbp - 0x54], edx
mov byte [rax + 0xe], cl
mov cx, 0x877c
xor cx, 0x8338
sub rsp, 0x20
call fcn.140062ce5
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp - 0x54]
mov byte [rbp - 0x4e], dl
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x4d], cl
cmp eax, 0xb5c38427
ja 0x14014b041
mov al, byte [rbp - 0x4d]
test al, 1
jne 0x14014ac38
jmp 0x14014b029
mov r9, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 8]
mov rax, qword [rbp - 0x38]
mov r8, qword [rbp - 0x40]
mov r10b, byte [rbp - 0x4e]
mov byte [rdx + 0xf], r10b
mov qword [rcx], r8
mov qword [rcx + 8], rax
mov r8d, 4
sub rsp, 0x20
call fcn.140149ba0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 8]
mov dword [rbp - 0x58], ecx
cmp byte [rax], 0
jne 0x14014b029
mov rcx, qword [rbp - 0x28]
mov eax, dword [rbp - 0x58]
test eax, eax
setne al
mov rcx, qword [rcx]
mov qword [rbp - 0x60], rcx
test rcx, rcx
sete cl
or al, cl
test al, 1
jne 0x14014aca8
jmp 0x14014ad38
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x140264728]
mov qword [rcx], rax
lea rax, [0x1402639e8]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140263a98]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140263aa0]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xbee9397017d905ac
movabs rdx, 0x4116c68fa6d41178
xor rax, rdx
lea rdx, [0x1402639e8]
lea r8, [0x140263a7f]
lea r9, [0x140263a02]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14001203f
add rsp, 0x30
jmp 0x14014b029
mov eax, dword [0x140254018]
mov ecx, 0xdb089eaf
xor ecx, 0x515fc2f2
xor eax, ecx
add eax, dword [0x14025401c]
mov ecx, eax
xor ecx, 0x4588d0e9
mov edx, 0xffffffff
xor edx, 0x4588d0e9
and eax, edx
shl eax, 1
sub eax, ecx
imul eax, eax, 0xda80e73c
mov ecx, 0xe10599a3
xor ecx, 0x69d7131d
xor eax, ecx
cmp eax, 0x703e75fd
je 0x14014b04a
mov rcx, qword [rbp]
mov eax, dword [0x140254020]
mov r9d, dword [0x140254024]
mov edx, 0x3fbd8e4a
xor edx, 0xc04271b5
mov r10d, r9d
xor r10d, edx
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
add eax, 0xadeeb99d
sub eax, 0x828d1a1d
sub eax, 0xadeeb99d
add eax, 0x5e738bc1
mov r8d, 0x93c3dad4
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x18]
mov dword [rbp - 0x74], edx
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140148b5c
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x74]
mov qword [rbp - 0x70], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x1cc8fa26
je 0x14014b04a
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14014ae41
jmp 0x14014b029
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x60]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
sub rsp, 0x30
mov r8, rsp
mov dword [r8 + 0x28], 5
mov dword [r8 + 0x20], 0
xor r8d, r8d
mov r9d, r8d
mov r8, r9
call rax
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 8]
mov al, byte [rax]
test al, al
sete al
test ecx, ecx
sets cl
and al, cl
test al, 1
jne 0x14014ae97
jmp 0x14014b029
mov eax, dword [0x140254028]
sub eax, dword [0x14025402c]
mov ecx, 0x13b6f183
xor edx, edx
div ecx
mov ecx, 0x2fff641a
xor ecx, 0xd0009be5
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x7e4b9132
mov edx, 0xffffffff
xor edx, 0x56fb9e06
or eax, ecx
mov ecx, 0xcbacf54a
xor ecx, 0x9d576b4c
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xa2770c9a
xor edx, edx
div ecx
cmp eax, 0xd6df4f37
je 0x14014b053
mov eax, dword [0x140254030]
mov r8d, dword [0x140254034]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0xc4321f23
or eax, 0xc4321f23
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xfb39e98b
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xac78a998
mov r8d, 0x903d3cc6
xor r8d, 0x3c45955e
mov ecx, 0x540cf77a
xor ecx, 0xabf30885
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xac78a998
or eax, 0xac78a998
imul eax, edx
add eax, ecx
mov dword [rbp - 0x78], eax
movabs rcx, 0x78b5c9e8495b0e12
movabs rax, 0x78b5c9e8495b0e52
xor rcx, rax
movabs rdx, 0x6a6b1079b0a37b79
movabs rax, 0x6a6b1079b0a37b71
xor rdx, rax
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x140264728]
mov qword [rcx], rax
lea rax, [0x1402639e8]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140263a98]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140263aa0]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1402639e8]
lea r8, [0x140263a7f]
lea r9, [0x140263a02]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffff888bad48
call fcn.14001203f
mov eax, dword [rbp - 0x78]
add rsp, 0x30
cmp eax, 0x7a6d2ecf
jbe 0x14014aef7
jmp 0x14014b029
add byte [rax], al
add byte [rax - 0x73], cl
and byte gs:[rbp - 0x3d], bl
lea rsp, [rbp + 0x20]
pop rbp
ret
pop rax
xor ch, al
pop rax
jmp 0x14014a767
xchg ebp, eax
mov al, 0xac
je 0x14014b026
jp 0x14014b038
invalid
mov edx, 0xe9094177
sti
invalid
pop rax
invalid
sbb dword [rcx + rsi], edx
out 0xe9, al
wait
invalid