Function at 0x1400455d0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x98
mov byte [rsp + 0x76], r9b
mov byte [rsp + 0x77], r8b
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rcx
mov rax, qword [rdx]
mov qword [rsp + 0x90], rax
movabs rcx, 0x79a2a3c0d5e2f176
movabs rdx, 0x79a2a3c0d5e2f176
xor rcx, rdx
cmp rax, rcx
jge 0x1400456f7
mov eax, dword [0x140218310]
and eax, dword [0x140218314]
xor ecx, ecx
sub ecx, 0xe3d8e47e
add eax, ecx
mov edx, eax
xor edx, 0x60a3f227
mov ecx, 0x579dc836
xor ecx, 0xa86237c9
xor edx, ecx
and edx, 0x60a3f227
mov ecx, 0xb16b1cd8
xor ecx, 0xb16b1cda
imul ecx, edx
sub ecx, 0x60a3f227
sub eax, ecx
mov ecx, 0x1464fc0c
xor ecx, 0x1464fc0c
mov edx, 0xa01fd3ee
xor edx, 0xc2d89df0
sub ecx, edx
sub eax, ecx
cmp eax, 0x5c92b838
jbe 0x140045a73
mov rcx, qword [rsp + 0x90]
mov eax, dword [0x140218318]
xor eax, 0x26b85245
mov edx, dword [0x14021831c]
xor edx, 0x6da457b1
imul eax, edx
imul eax, eax, 0x35d35409
xor edx, edx
sub edx, 0x2fb2a065
add eax, edx
mov edx, 0x3e280081
xor edx, 0x8e6d6fec
or eax, edx
mov dword [rsp + 0x70], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000e6db
mov eax, dword [rsp + 0x70]
cmp eax, 0x86069f7
jb 0x14004568d
jmp 0x140045a63
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x90]
call fcn.14001c510
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x80]
add rcx, 8
mov qword [rsp + 0x58], rcx
add rax, 8
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x50], rax
mov ecx, dword [0x140218320]
mov edx, dword [0x140218324]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, eax
and ecx, 0x20f961d2
mov edx, 0x4670f82e
xor edx, 0x4670f82c
imul ecx, edx
xor eax, 0x20f961d2
add eax, ecx
add eax, 0x11c374eb
mov ecx, 0xb41ff837
xor edx, edx
div ecx
mov ecx, 0xe6f84b44
xor ecx, 0xad79ec28
cmp eax, ecx
jae 0x140045a7c
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x140218328]
xor eax, 0xda12f39f
mov edx, dword [0x14021832c]
mov r8d, 0x197ca36c
xor r8d, 0x7909ed9e
xor edx, r8d
and eax, edx
mov r8d, 0xc433b8ac
xor r8d, 0x9e8c45ad
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
sub r8d, 0xce5bce1d
sub eax, r8d
add eax, 0x6962af67
cmp rcx, qword [rdx]
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0x336977b9
jbe 0x140045799
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140045810
jmp 0x140045a63
mov cl, byte [rsp + 0x77]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x80]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov al, byte [rax + rdx + 8]
mov r8, qword [r8]
mov qword [rsp + 0x40], r8
cmp rdx, r8
setl dl
mov byte [rsp + 0x4e], dl
cmp al, cl
jne 0x14004588a
mov al, byte [rsp + 0x4e]
test al, 1
jne 0x140045870
jmp 0x140045858
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffff
call fcn.1400153d3
jmp 0x140045a63
mov rcx, qword [rsp + 0x80]
call fcn.140045565
mov al, byte [rsp + 0x76]
mov byte [rsp + 0x3f], al
jmp 0x140045a1b
mov al, byte [rsp + 0x4e]
test al, 1
jne 0x1400458da
jmp 0x14004589b
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
movabs rax, 0xef8ad3073fea7c25
movabs r8, 0xf751e68621045206
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x18db35811eee2e23
sub rdx, rax
call fcn.1400153d3
jmp 0x140045a63
mov rcx, qword [rsp + 0x80]
call fcn.140045565
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x50]
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
cmp rax, rcx
jl 0x14004591a
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffff
call fcn.1400153d3
jmp 0x140045a63
mov eax, dword [0x140218330]
or eax, dword [0x140218334]
mov ecx, eax
add ecx, 1
mov edx, 0x59c941f4
xor edx, 0xa636be0b
xor eax, edx
mov edx, 0xc63349f4
xor edx, 0xeefd8739
or eax, edx
add eax, ecx
sub eax, 0x97b2a75e
xor eax, 0xa0cf272
cmp eax, 0x780c5469
je 0x140045a85
mov r8, qword [rsp + 0x50]
mov eax, dword [0x140218338]
mov ecx, dword [0x14021833c]
mov edx, 0xba53827d
xor edx, 0xb4ecd47a
xor ecx, edx
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x54d7ea3e
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov edx, 0xd63c8f0f
xor edx, 0x29c370f0
mov ecx, eax
xor ecx, edx
mov edx, 0xbcd9d8b3
xor edx, 0x2aeb66c6
and edx, ecx
mov r9d, 0x39249db7
xor r9d, 0xaf1623c2
mov ecx, 0x98daeedf
xor ecx, 0x67251120
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, 0x9632be75
or eax, 0x9632be75
imul eax, edx
add eax, ecx
mov ecx, 0xed9a1b4b
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x58]
mov ecx, 0x73388ca
xor ecx, 0x3a6267a
mov rdx, qword [rdx]
mov dl, byte [rdx + r8 + 8]
mov byte [rsp + 0x2f], dl
cmp eax, ecx
jae 0x140045a85
mov al, byte [rsp + 0x2f]
mov byte [rsp + 0x3f], al
jmp 0x140045a1b
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x60]
mov dl, byte [rsp + 0x3f]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
mov rcx, rax
and rcx, 1
movabs rdx, 0xea5b02f1ae8fe4b9
movabs r8, 0xea5b02f1ae8fe4bb
xor rdx, r8
imul rcx, rdx
xor rax, 1
add rax, rcx
mov qword [rsp + 0x68], rax
jmp 0x140045732
mov rax, qword [rsp + 0x88]
add rsp, 0x98
ret
xor byte [rdx - 0x58], bh
xchg ebx, eax
jmp 0x14004568d
jbe 0x140045a80
sub byte [rbp - 0x2eb17], dl
jmp qword [0x129de3546]
jmp 0x140045799
and eax, 0xe9d9dabc
invalid