Function at 0x1400e90c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x100
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x68], rdx
mov qword [rbp + 0x70], rcx
mov qword [rbp + 0x78], rcx
mov eax, dword [0x1401f7e20]
xor eax, 0xaf6be74c
sub eax, dword [0x1401f7e24]
add eax, 0x3331eb1a
sub eax, 0x72f01c99
mov ecx, 0x473ac1fb
xor ecx, 0x2c516fe8
add eax, ecx
mov ecx, 0x48e5a136
xor ecx, 0x27fc6bd9
cmp eax, ecx
je 0x1400e9ce3
mov eax, dword [0x1401f7e28]
mov ecx, dword [0x1401f7e2c]
xor ecx, 0x56bba8b2
xor edx, edx
div ecx
and eax, 0x43051164
or eax, 0x905ac61b
imul eax, eax, 0xb164ad8d
mov dword [rbp + 0x4c], eax
mov eax, 0x10
mov qword [rbp + 0x30], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x30]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x40], rax
sub rsp, 0x20
call fcn.1400e82ac
mov rcx, qword [rbp + 0x68]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x4c]
mov qword [rbp + 0x50], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x58], rcx
cmp rcx, 0
setl cl
mov byte [rbp + 0x67], cl
cmp eax, 0x5b9fc266
je 0x1400e9117
mov al, byte [rbp + 0x67]
test al, 1
jne 0x1400e91b2
jmp 0x1400e91f6
mov rcx, qword [rbp + 0x58]
movabs rdx, 0x2214f3c1a604ac9
movabs rax, 0x2214f3c1a604ac9
xor rdx, rax
movabs r8, 0x529dedc6ede3ceaa
movabs rax, 0x2d621239121c3155
xor r8, rax
sub rsp, 0x20
call fcn.14000f6ec
add rsp, 0x20
jmp 0x1400e9c0f
mov rdx, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.14001e097
add rsp, 0x20
mov ecx, 0x37a
sub rsp, 0x20
call fcn.14006b380
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x28], rcx
cmp byte [rax], 0
jne 0x1400e9c0f
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x68]
add rcx, 8
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
mov rcx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x20]
mov qword [rbp + 8], rax
mov rcx, qword [rcx]
mov qword [rbp + 0x10], rcx
cmp rax, rcx
jge 0x1400e9c0f
mov rax, qword [rbp + 8]
movabs rcx, 0xdc735b62ddf6df26
movabs rdx, 0xdc735b62ddf6df26
xor rcx, rdx
cmp rax, rcx
jge 0x1400e92d7
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x10]
movabs rax, 0x38a10d52bb3f7eae
movabs r8, 0x8bba69bd0311b93e
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xe5e27e3e97d2a13a
movabs r8, 0x56f91ad12ffc66aa
xor rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x1400e9a0d
mov eax, dword [0x1401f7e30]
xor eax, 0x228b4ce9
mov ecx, dword [0x1401f7e34]
xor ecx, 0x5bcd40f4
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xb8f9a4c
add eax, ecx
or eax, 0xb1223d9e
mov ecx, 0x48343f8
xor ecx, 0x48343f8
mov edx, 0xc8a0009a
xor edx, 0x699c12aa
sub ecx, edx
add eax, ecx
mov ecx, 0xdebee66e
xor ecx, 0x88973d
cmp eax, ecx
je 0x1400e9cec
mov eax, dword [0x1401f7e38]
xor eax, 0x148c5222
mov ecx, dword [0x1401f7e3c]
xor ecx, 0xc84c71a6
and eax, ecx
and eax, 0xd9b3d7da
add eax, 0x870b9f25
mov ecx, 0x75fe3fe2
xor edx, edx
div ecx
mov dword [rbp], eax
mov cx, 0x41dd
xor cx, 0xee90
mov dx, 0xb4cf
xor dx, 0x3dea
sub rsp, 0x20
call fcn.14006e8e1
mov rcx, qword [rbp + 0x50]
add rsp, 0x20
mov dx, ax
mov eax, dword [rbp]
mov word [rbp + 4], dx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 7], cl
cmp eax, 0xfb7f3491
jae 0x1400e9cec
mov al, byte [rbp + 7]
test al, 1
jne 0x1400e93b1
jmp 0x1400e9b6c
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x18]
mov dx, word [rbp + 4]
mov rax, qword [rax]
mov r8, rax
add r8, 8
add r8, rcx
mov qword [rbp - 8], r8
cmp byte [rax + rcx + 8], dl
je 0x1400e93f5
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x68]
mov rcx, qword [rcx]
mov qword [rbp - 0x10], rcx
cmp rax, rcx
jl 0x1400e9bb3
jmp 0x1400e9b71
mov eax, dword [0x1401f7e40]
mov ecx, 0x9b75ab3a
xor ecx, 0xfd92b91f
xor eax, ecx
mov edx, dword [0x1401f7e44]
mov ecx, 0xb86a2c2b
xor ecx, 0x7f3fc155
xor edx, ecx
mov r8d, 0x8b4ffeee
xor r8d, 0x74b00111
mov ecx, eax
xor ecx, r8d
and ecx, edx
mov r8d, 0x69d60837
xor r8d, 0x9629f7c8
xor edx, r8d
and eax, edx
sub eax, ecx
xor ecx, ecx
sub ecx, 0x190b7387
add eax, ecx
add eax, 0x6e6f56c7
mov ecx, 0xfc8a6bc7
xor ecx, 0xfc8a6bc7
sub ecx, eax
mov eax, 0xc46d51d7
xor eax, 0xc46d51d7
mov edx, 0x6cab90f4
xor edx, 0x1816dd53
sub eax, edx
add ecx, eax
mov eax, 0x88cc5d5f
xor eax, 0x88cc5d5f
sub eax, ecx
cmp eax, 0x51be303f
jae 0x1400e9cf5
mov eax, dword [0x1401f7e48]
xor edx, edx
div dword [0x1401f7e4c]
mov ecx, 0xb0972dc3
xor ecx, 0x58b4fad5
add eax, ecx
mov ecx, 0x6d955f34
xor ecx, 0xac21ef99
xor edx, edx
div ecx
mov ecx, 0xa99d57ea
xor ecx, 0xec9ee140
sub eax, ecx
mov dword [rbp - 0x24], eax
mov ecx, 0x89
sub rsp, 0x20
call fcn.14006b380
mov rcx, qword [rbp + 0x50]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x24]
mov qword [rbp - 0x20], rdx
mov cl, byte [rcx]
mov dl, 0xaf
xor dl, 0xaf
cmp cl, dl
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0xeb24612a
jae 0x1400e9cf5
mov al, byte [rbp - 0x11]
test al, 1
jne 0x1400e9513
jmp 0x1400e9a0d
mov rdx, qword [rbp - 0x20]
mov r8, qword [rbp + 8]
mov rcx, rdx
add rcx, r8
mov qword [rbp - 0x30], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400e954d
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
jmp 0x1400e9a0d
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbp - 0x30]
cmp qword [rax], rcx
jg 0x1400e95db
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402085d0]
mov qword [rcx], rax
lea rax, [0x140207100]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140207130]
mov qword [rcx + 0x18], rax
mov rax, qword [str._q__]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140207100]
lea r8, [0x14020710f]
lea r9, [0x140207122]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffe83fa363
call fcn.140016090
add rsp, 0x30
jmp 0x1400e9a0d
mov rax, qword [rbp + 0x38]
mov byte [rax], 0
mov ecx, 0x7f
sub rsp, 0x20
call fcn.14006b380
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp - 0x38], rcx
cmp byte [rax], 0
jne 0x1400e9a0d
mov rcx, qword [rbp - 0x38]
mov r9, qword [rbp + 8]
mov rdx, rcx
add rdx, r9
mov qword [rbp - 0x40], rdx
movabs rax, 0xea72fbcc1ddb85d1
movabs r8, 0x158d0433e2247a2e
xor rax, r8
mov r8, rdx
xor r8, rax
mov rax, r9
and rax, r8
xor r9, 0xffffffffffffffff
mov r8, rdx
and r8, r9
or rax, r8
xor rdx, rcx
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xe318209ca7559f70
xor rcx, r8
or rax, rdx
movabs rdx, 0xe318209ca7559f70
or rcx, rdx
movabs rdx, 0xe9539db4cfa7ff3d
movabs r8, 0x16ac624b305800c2
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1400e96b2
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
jmp 0x1400e9a0d
mov ecx, 0x217
sub rsp, 0x20
call fcn.14006b380
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp - 0x48], rcx
mov al, byte [rax]
mov cl, 0x5a
xor cl, 0x5a
cmp al, cl
jne 0x1400e9a0d
mov r9, qword [rbp - 0x48]
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x68]
mov r10, qword [rax]
mov qword [rcx], r10
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14003da70
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x1400e9a0d
mov cx, 0x29ca
xor cx, 0x291c
sub rsp, 0x20
call fcn.14006b380
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rbp - 0x58], rcx
mov al, byte [rax]
mov cl, 0x3e
xor cl, 0x3e
cmp al, cl
jne 0x1400e9a0d
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
cmp rax, rcx
jne 0x1400e97df
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140016330
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402085d0]
mov qword [rcx], rax
lea rax, [0x140207100]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140207130]
mov qword [rcx + 0x18], rax
mov rax, qword [str._q__]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140207100]
lea r8, [0x14020710f]
lea r9, [0x140207122]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x3e6d5448
call fcn.140016090
add rsp, 0x30
jmp 0x1400e9a0d
mov eax, dword [0x1401f7e50]
add eax, dword [0x1401f7e54]
mov edx, 0xffffffff
xor edx, 0xd0cb3b0
mov ecx, eax
and ecx, edx
mov r8d, 0x7823e653
xor r8d, 0x752f55e3
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0x96ee4a93
xor ecx, 0xffffffff
add eax, 0x96ee4a93
mov edx, 0x7973445d
xor edx, 0x7973445c
add eax, edx
add eax, ecx
mov ecx, 0x91ec3cb3
xor edx, edx
div ecx
cmp eax, 0x2168ff49
je 0x1400e9cfe
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x38]
mov edx, dword [0x1401f7e58]
or edx, dword [0x1401f7e5c]
mov r8d, 0x3995af84
xor r8d, 0x1d541f4c
or edx, r8d
add edx, 0x6750c05c
sub edx, 0x3a2683f2
sub edx, 0x6750c05c
xor edx, 0xcea5792a
mov dword [rbp - 0x6c], edx
mov dl, byte [rax]
sub rsp, 0x20
call fcn.1400e82c7
add rsp, 0x20
mov ecx, 0x1e9
sub rsp, 0x20
call fcn.14006b380
mov rcx, qword [rbp + 0x50]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x6c]
mov qword [rbp - 0x68], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x3dd1a0d3
je 0x1400e9cfe
mov al, byte [rbp - 0x59]
test al, 1
jne 0x1400e98d5
jmp 0x1400e9a0d
mov eax, dword [0x1401f7e60]
or eax, dword [str.k__u]
mov ecx, 0x2404d2b7
xor ecx, 0xa4dba3da
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x2954c6b9
mov r8d, 0xeadd0090
xor r8d, 0xc389c629
mov ecx, 0xd8b04b9b
xor ecx, 0x274fb464
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x2954c6b9
or eax, 0x2954c6b9
imul eax, edx
add eax, ecx
imul eax, eax, 0xb03929b5
mov ecx, 0x937409b0
xor ecx, 0x8b40eb05
cmp eax, ecx
je 0x1400e9d07
mov rcx, qword [rbp - 0x68]
mov r9, qword [rbp + 8]
mov edx, dword [0x1401f7e68]
and edx, dword [0x1401f7e6c]
mov eax, 0x76bf2247
xor eax, 0xb12d387c
add edx, eax
or edx, 0x74296d59
mov r8d, 0xffffffff
xor r8d, 0x91b80ebd
mov eax, edx
xor eax, r8d
and eax, edx
xor edx, edx
sub rdx, r9
mov r8, rcx
sub r8, rdx
mov qword [rbp - 0x78], r8
mov rdx, r8
xor rdx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r9, r8
xor r9, 0xffffffffffffffff
or rcx, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xd38e5110dbfc1b38
movabs r8, 0xd38e5110dbfc1b38
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp - 0x6d], cl
cmp eax, 0x90c24a0e
je 0x1400e9d07
mov al, byte [rbp - 0x6d]
test al, 1
jne 0x1400e9a00
jmp 0x1400e99f3
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
jmp 0x1400e9bd2
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
mov ecx, dword [0x1401f7e70]
mov edx, dword [0x1401f7e74]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor ecx, ecx
sub ecx, 0xaf5a5213
sub eax, ecx
mov ecx, 0x86694cec
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x65c0435a
xor edx, 0xef0433e0
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x8ac470ba
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8ac470ba
or eax, 0x8ac470ba
imul eax, edx
add eax, ecx
cmp eax, 0xd8495987
jae 0x1400e9d10
mov r8d, dword [0x1401f7e78]
xor r8d, 0x97bef42b
add r8d, dword [0x1401f7e7c]
mov eax, 0x3e5acf61
xor eax, 0xc1a5309e
mov ecx, r8d
xor ecx, eax
and ecx, 0xf23d4df2
mov r9d, 0x65ea6a23
xor r9d, 0x97d727d1
mov eax, 0xa3b87aad
xor eax, 0x5c478552
xor r9d, eax
and r8d, r9d
mov eax, 0xffffffff
xor eax, 0x146a024b
and eax, 0xf23d4df2
mov edx, 0x6df588e2
xor edx, 0x799f8aa9
and edx, r9d
or ecx, r8d
or eax, edx
xor ecx, eax
mov edx, 0x2fb54d02
xor edx, 0xd6049576
mov eax, 0x315bae14
xor eax, 0xcea451eb
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x54564bb0
xor ecx, 0xaba9b44f
mov edx, eax
xor edx, ecx
and edx, 0x8ff059ea
mov r8d, 0xffffffff
xor r8d, 0x8ff059ea
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x68aa940d
xor r8d, 0xe75acde7
mov edx, eax
and edx, r8d
mov r8d, 0x43d1a40
xor r8d, 0x8bcd43aa
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0xc7a166c8
je 0x1400e9d10
jmp 0x1400e9c0f
jmp 0x1400e9c0f
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp - 0x10]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
movabs rdx, 0xa7dbe8e6cb6a14b3
movabs r8, 0xa7dbe8e6cb6a14b3
xor rdx, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140016582
add rsp, 0x20
jmp 0x1400e9c0f
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp - 8]
mov dl, byte [rax]
sub rsp, 0x20
call fcn.1400e82c7
mov rax, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp - 0x80], rax
mov r8, qword [rbp - 0x80]
mov rax, r8
add rax, 1
xor r8, 0xffffffffffffffff
mov rdx, rax
xor rdx, r8
xor rdx, 0xffffffffffffffff
mov rcx, rax
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x20], rax
jge 0x1400e9245
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
mov eax, dword [0x1401f7e80]
add eax, dword [0x1401f7e84]
or eax, 0x417b7d52
mov ecx, 0xafd801e6
xor ecx, 0xb9d3648f
mov edx, 0x199e7365
xor edx, 0xe6618c9a
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor eax, 0x18bf262e
cmp eax, 0x412d9aef
jbe 0x1400e9d19
mov ecx, dword [0x1401f7e88]
mov eax, dword [0x1401f7e8c]
mov edx, 0x604e05c2
xor edx, 0x779b13bc
xor eax, edx
imul ecx, eax
or ecx, 0x736bbb4c
mov edx, 0x84457fdf
xor edx, 0x7bba8020
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x19aeea07
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x19aeea07
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x852c1379
xor edx, 0x7ad3ec86
xor ecx, edx
and eax, ecx
mov ecx, eax
xor ecx, 0xeb1722de
xor ecx, 0xffffffff
mov edx, 0x61468de9
xor edx, 0x8a51af37
or eax, edx
and eax, ecx
cmp eax, 0x86884026
jb 0x1400e9c51
mov rax, qword [rbp + 0x78]
lea rsp, [rbp + 0x80]
lea esp, [rbp + 0x80]
pop rbp
ret
int1
or eax, 0x2be9e353
hlt
invalid
insd dword [rdi], dx
pop bp
or eax, 0xfff791e9
jmp qword [rbp + 0x79]
jns 0x1400e9cdb
or cl, ch
cmp al, 0xfb
invalid
xor dword [rax - 0x55], esi
invalid
sbb al, 0x31
jne 0x1400e9d24
jmp 0x1400e9a83
invalid
nop word cs:[rax + rax]