Function at 0x1401637c0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
mov qword [rsp + 0x98], rcx
mov rax, qword [rcx + 8]
mov qword [rsp + 0xa0], rax
cmp rax, 0
je 0x140163837
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax]
movabs rcx, 0xaa118cf01ceeed6b
movabs rdx, 0xea118cf01ceeed6b
xor rcx, rdx
and rax, rcx
movabs rcx, 0x452e79f6348e0d86
movabs rdx, 0x452e79f6348e0d86
xor rcx, rdx
cmp rax, rcx
jne 0x140163837
mov rcx, qword [rsp + 0xa0]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x90], rax
cmp rax, 0
je 0x1401638ed
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
movabs rcx, 0xfcb71aa3c17e72c
movabs rdx, 0xf0348e55c3e818d3
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0x2aa5368def5cf36
movabs r8, 0x17cf0e2372ffbd7f
xor rcx, r8
movabs r8, 0xa4d59b01d32e1943
movabs r9, 0x5b2a64fe2cd1e6bc
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x15655d4bac0a7249
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401638ed
mov rcx, qword [rsp + 0x90]
call fcn.14000de03
mov ecx, dword [0x1401e1668]
xor ecx, 0xba5a6fd6
mov edx, dword [0x1401e166c]
mov eax, 0x4dfdf2af
xor eax, 0xb2020d50
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0x188c84d2
mov ecx, 0xff6112ea
xor ecx, 0x8377ed3b
sub eax, ecx
add eax, 0xe7414aeb
mov ecx, 0xd85887e
xor ecx, 0x719377af
add eax, ecx
xor eax, 0x1d59306e
mov ecx, 0xd196321a
xor ecx, 0x3886bd70
cmp eax, ecx
je 0x140164199
mov rcx, qword [rsp + 0x98]
mov eax, dword [0x1401e1670]
xor edx, edx
div dword [0x1401e1674]
mov r8d, 0xf6e61f36
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x202fd629
xor r8d, 0xdfd029d6
xor eax, r8d
or edx, eax
mov eax, 0xed02f511
and eax, 0xed02f511
xor eax, 0xffffffff
and edx, eax
xor edx, 0xffffffff
mov r8d, 0x796acd64
xor r8d, 0x23ff5400
mov eax, edx
and eax, r8d
mov r8d, 0xd1642df9
xor r8d, 0x8bf1b49d
xor edx, r8d
or eax, edx
mov rcx, qword [rcx + 0x28]
mov qword [rsp + 0x80], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x8f], cl
cmp eax, 0x2db88beb
jbe 0x140164199
mov al, byte [rsp + 0x8f]
test al, 1
jne 0x140163a33
jmp 0x1401639f4
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140163a33
mov rcx, qword [rsp + 0x80]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x78], rax
cmp rax, 0
je 0x140163c83
mov eax, dword [0x1401e1678]
or eax, dword [0x1401e167c]
xor ecx, ecx
sub ecx, 0xc4781d86
sub eax, ecx
mov ecx, 0x788066a
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xf1395d66
xor ecx, 0xffffffff
or eax, 0xf1395d66
and eax, ecx
mov ecx, 0xf112b312
xor ecx, 0x4c7f1881
cmp eax, ecx
ja 0x1401641a2
mov rcx, qword [rsp + 0x78]
mov edx, dword [0x1401e1680]
mov r8d, dword [0x1401e1684]
mov r9d, edx
xor r9d, 0xffffffff
mov eax, r8d
and eax, r9d
xor r8d, 0xffffffff
and edx, r8d
or eax, edx
mov r9d, 0xffffffff
xor r9d, 0x1fc90f3
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0xaa10d003
xor r9d, 0x55ef2ffc
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x1fc90f3
mov r9d, 0x85353230
xor r9d, 0x84c9a2c3
or eax, r9d
imul eax, r8d
add eax, edx
and eax, 0x8c47803d
mov edx, 0x465a6c2b
xor edx, 0x335c061d
add eax, edx
mov rdx, qword [rcx]
movabs r8, 0xc8ff614873002814
movabs rcx, 0x88ff614873002814
xor r8, rcx
movabs rcx, 0xd7a691da194dbc93
movabs r9, 0x28596e25e6b2436c
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rsp + 0x77], cl
cmp eax, 0x71e58f43
ja 0x140163a92
mov al, byte [rsp + 0x77]
test al, 1
jne 0x140163b7c
jmp 0x140163c83
mov r8d, dword [0x1401e1688]
mov edx, dword [0x1401e168c]
mov eax, 0xbe58c5cc
xor eax, 0x41a73a33
mov ecx, r8d
xor ecx, eax
mov eax, 0xfdd5e10f
xor eax, 0x1d65cf90
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0xe0b02e9f
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0xe0b02e9f
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x31a0b58e
xor ecx, 0xa1a8cb07
add eax, ecx
mov ecx, 0x5945f237
xor ecx, 0x720f7dfa
and eax, ecx
mov ecx, 0xb592e015
xor edx, edx
div ecx
cmp eax, 0xc6f1198f
je 0x1401641ab
mov rcx, qword [rsp + 0x78]
mov eax, dword [0x1401e1690]
mov edx, dword [0x1401e1694]
add eax, 0x7250754f
add eax, edx
sub eax, 0x7250754f
mov edx, 0x7822eb8d
xor edx, 0xbc0b4b0e
and eax, edx
mov edx, 0x546d428b
xor edx, 0xab92bd74
xor eax, edx
mov r8d, 0xffffffff
xor r8d, 0x1cf55a91
mov edx, 0xffffffff
xor edx, 0x293c343f
or eax, r8d
or edx, 0x293c343f
mov r8d, 0x888afe40
xor r8d, 0x777501bf
xor eax, r8d
and eax, edx
xor eax, 0x86465018
mov dword [rsp + 0x70], eax
call fcn.14000de03
mov eax, dword [rsp + 0x70]
cmp eax, 0x1f5c0222
je 0x140163bf7
jmp 0x140163c83
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0x68], rax
cmp rax, 0
je 0x140163cc4
mov rcx, qword [rsp + 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140163cc4
mov rcx, qword [rsp + 0x68]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x60], rax
cmp rax, 0
je 0x140163d15
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
movabs rcx, 0xab2e03d3aadebe11
movabs rdx, 0xeb2e03d3aadebe11
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140163d15
mov rcx, qword [rsp + 0x60]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x88]
mov qword [rsp + 0x58], rax
cmp rax, 0
je 0x140163e33
mov eax, dword [0x1401e1698]
mov edx, dword [0x1401e169c]
mov r8d, 0x637905ca
xor r8d, 0x9c86fa35
mov ecx, eax
xor ecx, r8d
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, 0x28151f8c
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0xe60f3f5c
add eax, ecx
mov ecx, 0xa05c9e2
xor ecx, 0xf5fa361d
mov edx, eax
xor edx, ecx
and edx, 0xcd0e810b
mov r8d, 0x9fec0569
xor r8d, 0x52e28462
mov ecx, 0xd04a903c
xor ecx, 0x2fb56fc3
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xcd0e810b
or eax, 0xcd0e810b
imul eax, edx
add eax, ecx
cmp eax, 0xb5f8c605
jae 0x1401641b4
mov eax, dword [0x1401e16a0]
xor edx, edx
div dword [0x1401e16a4]
mov rdx, qword [rsp + 0x58]
imul eax, eax, 0x5e4a779d
mov ecx, 0x50fc9f0a
xor ecx, 0xd36b294b
xor eax, ecx
mov ecx, 0xe805aeb7
xor ecx, 0xaea67ada
xor eax, ecx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rsp + 0x57], cl
cmp eax, 0xc7859870
ja 0x140163dc2
mov al, byte [rsp + 0x57]
test al, 1
jne 0x140163e29
jmp 0x140163e33
mov rcx, qword [rsp + 0x58]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0xa0]
mov qword [rsp + 0x48], rax
cmp rax, 0
je 0x140163e77
mov rcx, qword [rsp + 0x48]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140163e77
mov rcx, qword [rsp + 0x48]
call fcn.14000de03
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0xb8]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x140163ef4
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0xd53b73e21975b723
xor rcx, r8
or rax, rdx
movabs rdx, 0xd53b73e21975b723
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140163ef4
mov rcx, qword [rsp + 0x40]
call fcn.14000de03
mov eax, dword [0x1401e16a8]
xor eax, dword [0x1401e16ac]
mov ecx, 0xbb62f43f
xor ecx, 0x449d0bc0
mov edx, eax
xor edx, ecx
and edx, 0x196f847b
mov r8d, 0x31a16aa9
xor r8d, 0x28ceeed2
mov ecx, 0x3bba91f3
xor ecx, 0xc4456e0c
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x196f847b
or eax, 0x196f847b
imul eax, edx
add eax, ecx
xor eax, 0xcad2baac
mov ecx, eax
and ecx, 0xeec64360
shl ecx, 1
mov edx, 0x8c1e9dee
xor edx, 0x62d8de8e
xor eax, edx
add eax, ecx
cmp eax, 0x38034947
je 0x1401641bd
mov eax, dword [0x1401e16b0]
mov edx, dword [0x1401e16b4]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov ecx, 0x3d58d705
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x98]
mov ecx, 0xbc0d5b87
xor ecx, 0xe1a2ab5e
and eax, ecx
xor ecx, ecx
sub ecx, 0x9f5c422a
sub eax, ecx
mov ecx, 0x39dcdda0
xor ecx, 0xd8919422
mov rdx, qword [rdx + 0xd0]
mov qword [rsp + 0x30], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0x3f], dl
cmp eax, ecx
ja 0x1401641bd
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x140164190
jmp 0x140163fee
mov eax, dword [0x1401e16b8]
xor eax, 0x1f212af1
mov ecx, dword [0x1401e16bc]
mov edx, 0x6d625301
xor edx, 0x5709e796
xor ecx, edx
and eax, ecx
mov ecx, 0x4dcd945b
xor ecx, 0x5e5f30e8
xor eax, ecx
xor eax, 0x3d0c563
mov r8d, 0x207cf54c
xor r8d, 0x7f4f1772
mov ecx, 0x1fe6d4be
xor ecx, 0xe0192b41
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x39a66d7a
xor r8d, 0xc6599285
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x5f33e23e
or eax, 0x5f33e23e
imul eax, edx
add eax, ecx
mov ecx, 0x4545770e
xor ecx, 0xd57784dc
cmp eax, ecx
jbe 0x1401641c6
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401e16c0]
sub eax, dword [0x1401e16c4]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
mov r8d, 0xd081bbd
xor r8d, 0xce69930
or eax, r8d
add eax, edx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x32cf5fd
mov r8d, 0xffffffff
xor r8d, 0x32cf5fd
and eax, r8d
or edx, eax
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xba0ad83d
mov r8d, 0xffffffff
xor r8d, 0xba0ad83d
and edx, r8d
mov r8d, 0xca089eb4
xor r8d, 0x35f7614b
xor eax, r8d
mov r8d, 0xa7075591
xor r8d, 0x58f8aa6e
xor edx, r8d
and eax, edx
mov rcx, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
movabs r8, 0x7999ed39f88e8c4f
movabs r9, 0x866612c6077173b0
xor r8, r9
xor rdx, r8
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
movabs rdx, 0xb49ca777d394ff5e
movabs r8, 0xb49ca777d394ff5e
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x973461af
ja 0x14016407d
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140164186
jmp 0x140164190
mov rcx, qword [rsp + 0x30]
call fcn.14000de03
nop
add rsp, 0xa8
ret
fbld tbyte [rbx + rdx*4]
xor al, 0xe9
stosd dword [rdi], eax
idiv edi
push rdx
jmp 0x127ffdde9
bnd jmp 0x127ffdde9
invalid
fnsave dword [rdx + rcx*4 - 0x6f]
jmp 0x140163dc2
shl byte [rcx + 0x38], cl
insb byte [rdi], dx
jmp 0x140163f74
in al, 0x63
pop rsp
jmp 0x14016407d