Function at 0x1400e02e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x110
lea rbp, [rsp + 0x80]
mov dword [rbp + 0x14], r9d
mov qword [rbp + 0x48], r8
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x20], rcx
mov eax, 0x10
mov qword [rbp + 0x28], rax
call fcn.14023fff0
sub rsp, rax
mov rax, qword [rbp + 0x28]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x50], rax
mov eax, 0x20
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x30], rax
sub rsp, 0x20
call fcn.1400dcfa0
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x60], rax
movabs rdx, 0x10d775b545a5f561
movabs rax, 0x10d775b545a5f579
xor rdx, rax
sub rsp, 0x20
call fcn.1400dd0c0
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov ecx, 0x412603da
xor ecx, 0x412603fa
mov dword [rax], ecx
mov ecx, 0x20
sub rsp, 0x20
call fcn.14000bbdd
mov r8, qword [rbp + 0x48]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x58], rcx
mov ecx, 0x455aa82
xor ecx, 0x455aa82
mov dword [rax], ecx
mov rax, qword [r8]
mov qword [rbp + 0x80], rax
mov rax, qword [r8 + 8]
mov qword [rbp + 0x88], rax
lea rcx, [rbp + 0x80]
sub rsp, 0x20
call fcn.1400dd200
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x68], rcx
cmp byte [rax], 0
jne 0x1400e0891
mov rax, qword [rbp + 0x40]
mov r10, qword [rbp + 0x58]
mov r11, qword [rbp + 0x50]
mov r9d, dword [rbp + 0x14]
mov r8, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x18]
xor edx, edx
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.1400aad6f
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp + 0x60]
mov dword [rbp + 0x10], ecx
cmp byte [rax], 0
jne 0x1400e0891
mov rax, qword [rbp + 0x58]
mov ecx, dword [rbp + 0x10]
cmp ecx, 0xea
mov dword [rbp + 4], ecx
mov qword [rbp + 8], rax
jne 0x1400e0518
mov rax, qword [rbp + 0x40]
mov ecx, dword [rax]
movsxd rax, ecx
mov qword [rbp - 0x10], rax
cmp ecx, 0
mov qword [rbp - 8], rax
jl 0x1400e0872
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x58]
sub rsp, 0x20
call fcn.14000d950
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x20], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x70], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x78], rax
lea rcx, [rbp + 0x70]
sub rsp, 0x20
call fcn.1400dd200
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x18], rcx
cmp byte [rax], 0
jne 0x1400e0891
mov r10, qword [rbp - 0x20]
mov rax, qword [rbp + 0x40]
mov r11, qword [rbp + 0x50]
mov r9d, dword [rbp + 0x14]
mov r8, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x18]
xor edx, edx
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.1400aad6f
mov rdx, qword [rbp + 0x60]
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp - 0x20]
cmp byte [rdx], 0
mov dword [rbp + 4], ecx
mov qword [rbp + 8], rax
jne 0x1400e0891
mov eax, dword [rbp + 4]
mov rcx, qword [rbp + 8]
mov qword [rbp - 0x28], rcx
mov ecx, 0x4d4e8727
xor ecx, 0x4d4e8727
cmp eax, ecx
je 0x1400e06b8
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14001d422
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov edx, 0x18
sub rsp, 0x20
call fcn.1400dd0c0
mov rax, qword [rbp + 0x60]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1400e0891
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 8]
mov qword [rbp - 0x30], rax
cmp rax, 0
je 0x1400e0a02
mov ecx, dword [0x140247610]
mov edx, dword [0x140247614]
mov r8d, 0x97734f0c
xor r8d, 0x688cb0f3
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
mov r8d, 0x227a4678
xor r8d, 0xdd85b987
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xc7fb0e16
xor ecx, 0x3804f1e9
xor eax, ecx
add eax, 0x3086f045
imul eax, eax, 0x1a2a4cf1
add eax, 0x61636fca
cmp eax, 0x37434a75
jbe 0x1400e0a0f
mov rdx, qword [rbp - 0x30]
mov eax, dword [0x140247618]
and eax, dword [0x14024761c]
imul eax, eax, 0xa26f5e29
mov ecx, 0x83c1b46a
xor ecx, 0x396e8daa
imul eax, ecx
or eax, 0xef024104
mov ecx, 0xa52d419c
xor ecx, 0x68a1bd3c
mov rdx, qword [rdx]
xor rdx, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor r9, r8
mov r8, 0xffffffffffffffff
movabs r10, 0xd7b83fcdcd7b063c
xor r8, r10
or rdx, r9
movabs r9, 0xd7b83fcdcd7b063c
or r8, r9
movabs r9, 0xac114841eadc408
movabs r10, 0xf53eeb7be1523bf7
xor r9, r10
xor rdx, r9
and rdx, r8
movabs r8, 0x314e04edd4285fd6
movabs r9, 0x314e04edd4285fd6
xor r8, r9
cmp rdx, r8
sete dl
mov byte [rbp - 0x31], dl
cmp eax, ecx
jbe 0x1400e05e7
mov rax, qword [rbp - 0x30]
mov cl, byte [rbp - 0x31]
test cl, 1
mov qword [rbp - 0x40], rax
jne 0x1400e09f1
jmp 0x1400e0a02
mov rax, qword [rbp + 0x40]
mov ecx, dword [rax]
movsxd rax, ecx
mov qword [rbp - 0x48], rax
cmp ecx, 0
mov qword [rbp - 8], rax
jl 0x1400e0872
mov eax, dword [0x140247620]
sub eax, dword [0x140247624]
imul eax, eax, 0xc2224f02
mov edx, 0xffffffff
xor edx, 0xb6d7ab8c
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xb6d7ab8c
add eax, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x632fe505
mov r8d, 0xffffffff
xor r8d, 0x632fe505
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x632fe505
or eax, 0x632fe505
imul eax, edx
add eax, ecx
cmp eax, 0x6a048d97
jbe 0x1400e0a18
mov rcx, qword [rbp - 0x28]
mov eax, dword [0x140247628]
xor eax, dword [0x14024762c]
imul eax, eax, 0xe5cd4044
mov r8d, 0xc71a0609
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x48]
or eax, 0x427504ff
mov dword [rbp - 0x50], eax
sub rsp, 0x20
call fcn.14000d950
mov rcx, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x60], rdx
mov eax, dword [rax]
mov dword [rbp - 0x54], eax
movabs rdx, 0x7ff912dd2f2e10c1
movabs rax, 0x7ff912dd2f2e10d9
xor rdx, rax
sub rsp, 0x20
call fcn.1400dd0c0
mov r10, qword [rbp - 0x60]
mov r9d, dword [rbp - 0x54]
mov r8, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x60]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
mov byte [r8 + 0x10], 1
mov qword [r8], r10
mov dword [r8 + 8], r9d
mov r9, qword [r8]
mov qword [rdx], r9
mov r9, qword [r8 + 8]
mov qword [rdx + 8], r9
mov r8, qword [r8 + 0x10]
mov qword [rdx + 0x10], r8
mov cl, byte [rcx]
mov dl, 0x50
xor dl, 0x50
cmp cl, dl
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x4092bace
jb 0x1400e073c
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1400e0811
jmp 0x1400e0891
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 8]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x1400e0a02
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax]
movabs r8, 0x854b18423edfbffe
movabs rdx, 0xc54b18423edfbffe
xor r8, rdx
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x40], rax
je 0x1400e09f1
jmp 0x1400e0a02
mov rcx, qword [rbp - 8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000db87
add rsp, 0x20
mov eax, dword [0x140247630]
mov ecx, 0x72e7885d
xor ecx, 0x771fb774
xor eax, ecx
xor edx, edx
div dword [0x140247634]
mov ecx, eax
mov eax, ecx
or eax, 0x58f6e2ea
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x58f6e2ea
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x286a524d
xor edx, 0xd795adb2
xor ecx, edx
and eax, ecx
mov ecx, 0xbc70abe3
xor edx, edx
div ecx
and eax, 0x2f45475a
cmp eax, 0x4fc35ed4
jae 0x1400e0a21
mov rcx, qword [rbp + 0x48]
mov eax, dword [0x140247638]
mov r8d, dword [0x14024763c]
xor r8d, 0x8d1ab1b1
xor edx, edx
div r8d
xor eax, 0x121aed84
mov edx, eax
xor edx, 0xffffffff
and edx, 0x461e73f5
mov r8d, 0x19806ae
xor r8d, 0x4786755b
mov r9d, 0xb813ba2a
xor r9d, 0x47ec45d5
xor r8d, r9d
and eax, r8d
or edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xb806ac62
and eax, r8d
or edx, 0xb806ac62
xor edx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xe5ac57d4
xor r8d, 0x1a53a82b
xor edx, r8d
and eax, edx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x78], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xd92a212b
je 0x1400e0a21
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1400e0a02
jmp 0x1400e09a2
mov rax, qword [rbp - 0x78]
mov rcx, qword [rax]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
movabs r8, 0x5ee343396734b339
movabs r9, 0xa11cbcc698cb4cc6
xor r8, r9
xor rdx, r8
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x40], rax
jne 0x1400e0a02
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp + 0x20]
lea rsp, [rbp + 0x90]
pop rbp
ret
push rdx
invalid
fisttp word [rsi - 0x13]
mov gs, ecx
sbb edi, ebp
invalid
in eax, 0x28
xchg ebp, eax
jmp 0x1400e08f3