Function at 0x1401b3b40
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xb0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x28], rcx
mov eax, 0x10
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.1401b4265
add rsp, 0x20
mov qword [rbp - 0x18], rax
add rax, 0x60
mov qword [rbp - 0x30], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.140012010
add rsp, 0x20
mov qword [rbp - 0x20], rax
lea rcx, [rbp + 0x20]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.1400219d9
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
add rsp, 0x20
mov rax, qword [rbp + 0x20]
mov qword [rdx + 8], rax
mov rax, qword [rbp + 0x28]
mov qword [rdx + 0x10], rax
mov rcx, qword [rcx]
add rcx, 0x20
sub rsp, 0x20
call fcn.1401a71a0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax + 0x60]
mov cl, 0x47
xor cl, 0x47
cmp al, cl
jne 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401a7e40
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4071
mov ecx, dword [0x1401e3810]
mov eax, dword [0x1401e3814]
xor eax, 0xffffffff
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov edx, 0x23794016
xor edx, 0xf093c228
mov eax, ecx
and eax, edx
mov edx, 0xa84bbb7a
xor edx, 0x7ba13944
xor ecx, edx
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xa78cf271
add eax, ecx
add eax, 1
imul eax, eax, 0xb50a4ba5
cmp eax, 0x1072c735
je 0x1401b4241
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x1401e3818]
mov r8d, dword [0x1401e381c]
mov edx, eax
xor edx, r8d
mov r9d, 0xe345f9e8
xor r9d, 0x1cba0617
xor edx, r9d
or eax, r8d
and eax, edx
mov r8d, 0xa7dab896
xor edx, edx
div r8d
sub eax, 0x16b06060
mov r8d, 0xffffffff
xor r8d, 0x64ddd64f
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0x64ddd64f
add eax, r8d
sub eax, edx
mov dword [rbp - 0x40], eax
sub rsp, 0x20
call fcn.1401aa130
mov rcx, qword [rbp - 0x30]
mov eax, dword [rbp - 0x40]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x249ce2f
jb 0x1401b3c66
mov al, byte [rbp - 0x39]
test al, 1
jne 0x1401b3cfd
jmp 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401ab3e0
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401ac570
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x49
xor cl, 0x49
cmp al, cl
jne 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401ad210
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4071
mov ecx, dword [0x1401e3820]
mov eax, dword [0x1401e3824]
xor eax, 0xeabbb39a
imul ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x16ece7af
xor edx, 0x40fc67dc
mov r8d, 0x14b2c202
xor r8d, 0x42a24271
or edx, r8d
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x56108073
and ecx, edx
or eax, ecx
mov ecx, 0x28cd1350
xor ecx, 0xd732ecaf
xor eax, ecx
imul ecx, eax, 0x1b2d737b
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xbfed271b
mov edx, 0xd1eab139
xor edx, 0x6e079622
mov r8d, 0x3710f038
xor r8d, 0xc8ef0fc7
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x82418623
xor ecx, 0xc2aa7420
cmp eax, ecx
jb 0x1401b424a
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x1401e3828]
add eax, dword [0x1401e382c]
sub eax, 0xb2949430
mov edx, 0x9a679ca0
xor edx, 0x89a3dd17
sub eax, edx
add eax, 0xb2949430
mov edx, 0x58fa4997
xor edx, 0xf6e245b3
imul eax, edx
sub eax, 0x66703bf8
mov dword [rbp - 0x48], eax
mov eax, 0x5bdf7b7b
xor eax, 0x26fae39c
mov dword [rbp - 0x4c], eax
sub rsp, 0x20
call fcn.1401adde0
mov rdx, qword [rbp - 0x30]
mov ecx, dword [rbp - 0x4c]
mov eax, dword [rbp - 0x48]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0x12
xor r8b, 0x12
cmp dl, r8b
sete dl
mov byte [rbp - 0x41], dl
cmp eax, ecx
jae 0x1401b3dff
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1401b3e8a
jmp 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401aec50
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4071
mov eax, dword [0x1401e3830]
mov ecx, dword [0x1401e3834]
mov edx, 0x2c23faa1
xor edx, 0xec1cf2f1
xor ecx, edx
imul eax, ecx
xor ecx, ecx
sub ecx, 0x980d8
add eax, ecx
sub eax, 0x97e5b91b
sub eax, 0x4ba88f67
add eax, 0x97e5b91b
sub eax, 0x40eab82b
mov ecx, 0x7be93eb7
xor ecx, 0x43738c10
cmp eax, ecx
jb 0x1401b4253
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x1401e3838]
imul eax, dword [0x1401e383c]
mov edx, 0x9b6c62d
xor edx, 0xe9a8b943
and eax, edx
imul eax, eax, 0x640f6251
mov r8d, 0x6f3c97ae
xor r8d, 0xa5dc8bd9
xor edx, edx
div r8d
mov dword [rbp - 0x54], eax
sub rsp, 0x20
call fcn.1401b2360
mov rcx, qword [rbp - 0x30]
mov eax, dword [rbp - 0x54]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x4d], cl
cmp eax, 0xeda0695
ja 0x1401b4253
mov al, byte [rbp - 0x4d]
test al, 1
jne 0x1401b3f66
jmp 0x1401b4071
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1401b2830
mov rax, qword [rbp - 0x30]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401b4071
mov cx, 0x8788
xor cx, 0x8d7f
sub rsp, 0x20
call fcn.140065c5f
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x30]
mov dword [rbp - 0x58], ecx
cmp byte [rax], 0
jne 0x1401b4071
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov rdx, qword [rax + 0x20]
sub rsp, 0x20
call fcn.140074e30
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 0x68], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x60], rcx
cmp byte [rax], 0
jne 0x1401b4071
mov rax, qword [rbp - 0x28]
mov rdx, qword [rax]
add rdx, 0x18
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.140120b50
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov rcx, qword [rbp + 0x10]
mov qword [rbp - 0x78], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rbp - 0x70], rcx
mov al, byte [rax]
mov cl, 0xf1
xor cl, 0xf1
cmp al, cl
jne 0x1401b4071
mov ecx, dword [rbp - 0x58]
mov rax, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x78]
mov r8, qword [rbp - 0x60]
mov r9, qword [rbp - 0x68]
mov qword [rbp], r9
mov qword [rbp + 8], r8
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], rax
mov rdx, rbp
lea r8, [rbp - 0x10]
sub rsp, 0x20
call fcn.140095b60
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x57
xor cl, 0x57
cmp al, cl
je 0x1401b40ed
sub rsp, 0x20
call fcn.1401aa097
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x1401b40ed
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401b40ed
mov rax, qword [rbp - 0x30]
mov cl, 0xc5
xor cl, 0xc5
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401aa0a9
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009428e
mov rax, qword [rbp - 0x30]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xf5
xor cl, 0xf5
cmp al, cl
jne 0x1401b40ed
sub rsp, 0x20
call fcn.1401aa0fd
add rsp, 0x20
mov eax, dword [0x1401e3840]
mov ecx, dword [0x1401e3844]
mov r8d, eax
or r8d, r8d
xor r8d, 0xffffffff
mov edx, ecx
or edx, edx
mov r9d, 0x3e9765bb
xor r9d, 0xc1689a44
xor edx, r9d
xor r8d, 0xffffffff
mov r9d, 0xf59c8e7b
xor r9d, 0xa637184
xor edx, r9d
and r8d, edx
mov edx, 0x43b9bea8
xor edx, 0xbc464157
xor eax, edx
mov edx, 0x13a20d2e
xor edx, 0xec5df2d1
xor ecx, edx
and eax, ecx
or r8d, eax
xor r8d, 0xffffffff
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x3a45e5b
mov edx, 0x4575ff59
xor edx, 0x46d1a102
mov eax, 0xa5e05877
xor eax, 0x5a1fa788
xor edx, eax
and r8d, edx
mov eax, 0xffffffff
xor eax, 0x5799bfab
mov r9d, 0xaef915db
xor r9d, 0xad5d4b80
and eax, r9d
and edx, 0x5799bfab
or ecx, r8d
or eax, edx
xor ecx, eax
mov eax, 0x4a56f5c7
xor eax, 0x2d7076ce
add ecx, eax
mov edx, 0xffffffff
xor edx, 0x3cd66524
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x716087c8
xor ecx, 0x3014c422
cmp eax, ecx
jae 0x1401b425c
mov eax, dword [0x1401e3848]
xor eax, 0xd25369e
xor edx, edx
div dword [0x1401e384c]
xor ecx, ecx
sub ecx, 0xa4bc7d73
add eax, ecx
mov ecx, 0x6361a553
xor ecx, 0x9c9e5aac
mov edx, eax
xor edx, ecx
and edx, 0xf3cbb05d
mov r8d, 0xffffffff
xor r8d, 0xf3cbb05d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xf3cbb05d
or eax, 0xf3cbb05d
imul eax, edx
add eax, ecx
mov ecx, 0xf4b5cbf
xor edx, edx
div ecx
cmp eax, 0x3dc3f6cc
ja 0x1401b425c
lea rsp, [rbp + 0x30]
pop rbp
ret
mov ah, 0x38
invalid
pushfq
je 0x1401b428e
jmp 0x1401b3dff
popfq
pushfq
invalid
and ah, byte [rax - 0x36]
invalid
and al, 0x40