Function at 0x1400e5d60
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xa0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x18], rcx
mov eax, 0x10
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1400e5b5d
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp - 0x10], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x1400e5ef5
mov rcx, qword [rbp - 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400e5ef5
mov eax, dword [0x1401de448]
xor eax, dword [0x1401de44c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x85650c72
mov r8d, 0xffffffff
xor r8d, 0x85650c72
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb8d6aa1
xor r8d, 0x8ee866d3
mov edx, eax
and edx, r8d
mov r8d, 0xed39f4ac
xor r8d, 0x685cf8de
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe3b7f1a8
xor edx, edx
div ecx
imul eax, eax, 0x1747bb71
cmp eax, 0x3b1cfc09
jae 0x1400e68d8
mov rcx, qword [rbp - 8]
mov edx, dword [0x1401de450]
mov r9d, dword [0x1401de454]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, edx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0xc79ac9f7
xor r8d, 0x994c9288
mov r9d, 0xe212a516
xor r9d, 0xbcc4fe69
or r8d, r9d
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5ed65b7f
and edx, r8d
or eax, edx
xor eax, 0xffffffff
add eax, 0x9433c8d0
sub eax, 0x30b6992a
mov edx, 0x429f5a5f
xor edx, 0xd6ac928f
sub eax, edx
xor eax, 0x447caa82
mov dword [rbp - 0x24], eax
sub rsp, 0x20
call fcn.14000de03
mov eax, dword [rbp - 0x24]
add rsp, 0x20
cmp eax, 0xce908ed4
jae 0x1400e68d8
jmp 0x1400e5ef5
mov ecx, dword [0x1401de458]
xor ecx, 0xb297bbf1
mov eax, dword [0x1401de45c]
xor eax, 0x76b0327a
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x140588e8
and ecx, 0x140588e8
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edx, eax
xor edx, 0x40b17e07
xor edx, 0xffffffff
and edx, 0x40b17e07
mov ecx, 0x5bea8ad4
xor ecx, 0x5bea8ad6
imul ecx, edx
mov edx, 0x4d664fe
xor edx, 0x44671af9
sub ecx, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x906dcb70
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xe280ac5c
xor r8d, 0x1d7f53a3
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x906dcb70
mov r8d, 0xa49da910
xor r8d, 0x34f06260
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x78eaf371
jbe 0x1400e68e1
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401de460]
mov r8d, dword [0x1401de464]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, r8d
add eax, edx
mov edx, eax
and edx, 0xba3f24da
mov r8d, 0x4f88a617
xor r8d, 0x4f88a615
imul edx, r8d
xor eax, 0xba3f24da
add eax, edx
mov r8d, 0x2e5b9de8
xor edx, edx
div r8d
mov r8d, eax
xor r8d, 0x48c607ad
xor r8d, 0xffffffff
and r8d, 0x48c607ad
mov edx, 0x8b35bdd6
xor edx, 0x8b35bdd4
imul edx, r8d
sub edx, 0x48c607ad
sub eax, edx
mov rcx, qword [rcx + 0x18]
mov qword [rbp - 0x30], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x25], cl
cmp eax, 0x17d69aed
je 0x1400e5fae
mov al, byte [rbp - 0x25]
test al, 1
jne 0x1400e607c
jmp 0x1400e6050
mov rcx, qword [rbp - 0x30]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400e607c
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x38], rax
cmp rax, 0
je 0x1400e61ec
mov ecx, dword [0x1401de468]
mov eax, dword [0x1401de46c]
xor eax, 0x24109526
and ecx, eax
mov eax, ecx
and eax, 0x188c84d2
mov edx, 0x4916fc32
xor edx, 0xb6e903cd
xor eax, edx
mov edx, 0x3a8a124c
xor edx, 0x2206969e
add ecx, edx
add ecx, 1
add ecx, eax
xor eax, eax
sub eax, 0xe7414aeb
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x1d59306e
mov edx, 0xffffffff
xor edx, 0x1d59306e
and ecx, edx
or eax, ecx
cmp eax, 0xe9108f6a
je 0x1400e68ea
mov rcx, qword [rbp - 0x38]
mov eax, dword [0x1401de470]
mov r8d, dword [0x1401de474]
mov edx, 0xbed68cd0
xor edx, 0xd13cb0f1
xor r8d, edx
xor edx, edx
div r8d
mov r8d, 0xf6e61f36
xor edx, edx
div r8d
mov edx, eax
and edx, 0xed02f511
mov r8d, 0x6d917cb3
xor r8d, 0x926e834c
xor edx, r8d
add eax, 0xed02f511
mov r8d, 0x4f04c8cc
xor r8d, 0x4f04c8cd
add eax, r8d
add eax, edx
mov r8d, 0xffffffff
xor r8d, 0x5a959964
mov edx, eax
and edx, r8d
mov r9d, 0x96f8c557
xor r9d, 0xcc6d5c33
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov rdx, qword [rcx]
mov r8, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
movabs rdx, 0xeb1a4c480f2afad5
movabs r8, 0xeb1a4c480f2afad5
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x2db88beb
jbe 0x1400e68ea
mov al, byte [rbp - 0x39]
test al, 1
jne 0x1400e61db
jmp 0x1400e61ec
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov ecx, dword [0x1401de478]
xor ecx, 0xb9d22a8b
mov edx, dword [0x1401de47c]
mov r8d, 0x99c0abbd
xor r8d, 0x663f5442
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
mov r8d, 0x698029d7
xor r8d, 0x967fd628
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
add eax, 0x9626acd6
add eax, 0xc4781d86
mov ecx, 0x71f3296e
xor ecx, 0xe7d585b8
sub eax, ecx
mov ecx, 0x974edfc8
xor ecx, 0x90c6d9a2
xor edx, edx
div ecx
and eax, 0xf1395d66
cmp eax, 0xbd6dab93
ja 0x1400e68f3
mov rcx, qword [rbp - 0x18]
mov edx, dword [0x1401de480]
mov eax, 0x6cc4f1f2
xor eax, 0x97bafc84
xor edx, eax
xor edx, dword [0x1401de484]
mov r8d, edx
xor r8d, 0xffffffff
and r8d, 0x1fc90f3
mov r9d, 0x58a71f0b
xor r9d, 0x595b8ff8
mov eax, 0x73c16361
xor eax, 0x8c3e9c9e
xor r9d, eax
mov eax, edx
and eax, r9d
imul eax, r8d
mov r9d, 0x731d66f7
xor r9d, 0x72e1f604
mov r8d, edx
and r8d, r9d
or edx, 0x1fc90f3
imul edx, r8d
add edx, eax
mov r8d, 0xffffffff
xor r8d, 0x8c47803d
mov eax, edx
xor eax, r8d
and eax, edx
add eax, 0x75066a36
mov rcx, qword [rcx + 0x38]
mov qword [rbp - 0x48], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x3a], cl
cmp eax, 0x71e58f43
ja 0x1400e626a
mov al, byte [rbp - 0x3a]
test al, 1
jne 0x1400e6381
jmp 0x1400e631c
mov rax, qword [rbp - 0x48]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x160a0750293c343f
xor rcx, r8
or rax, rdx
movabs rdx, 0x160a0750293c343f
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1400e6381
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x48]
mov qword [rbp - 0x50], rax
cmp rax, 0
je 0x1400e63c3
mov rcx, qword [rbp - 0x50]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400e63c3
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x58]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x1400e64c6
mov rcx, qword [rbp - 0x58]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400e64c6
mov ecx, dword [0x1401de488]
xor ecx, dword [0x1401de48c]
sub ecx, 0xe0b7d12c
mov eax, 0x6b9b8337
xor eax, 0xfb93fdbe
add ecx, eax
mov eax, 0xce99501d
xor eax, 0x2e2e8131
add ecx, eax
mov edx, 0xffffffff
xor edx, 0x2b4a8fcd
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xb592e015
xor edx, edx
div ecx
cmp eax, 0xc6f1198f
je 0x1400e68fc
mov rcx, qword [rbp - 0x58]
mov eax, dword [str.dux]
xor eax, 0x61962c59
mov edx, dword [0x1401de494]
mov r8d, 0x9b214ebc
xor r8d, 0x4d68d562
xor edx, r8d
mov r8d, 0xb30c3261
xor r8d, 0x8ecfb6ac
add eax, r8d
add eax, edx
mov edx, 0x22309002
xor edx, 0x1ff314cf
sub eax, edx
and eax, 0xc429a083
and eax, 0x1cf55a91
xor eax, 0x86465018
mov dword [rbp - 0x5c], eax
mov eax, 0x27c9d68
xor eax, 0x1d209f4a
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.14000de03
mov ecx, dword [rbp - 0x60]
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
cmp eax, ecx
je 0x1400e68fc
jmp 0x1400e64c6
mov eax, dword [0x1401de498]
mov ecx, dword [0x1401de49c]
xor ecx, 0xf2d8c5c2
sub eax, ecx
mov ecx, 0x28151f8c
xor edx, edx
div ecx
mov ecx, 0x49185e41
xor ecx, 0xaf17611d
sub eax, ecx
imul eax, eax, 0xcd0e810b
cmp eax, 0xb5f8c605
jae 0x1400e6905
mov eax, dword [0x1401de4a0]
xor edx, edx
div dword [0x1401de4a4]
mov edx, eax
mov rax, qword [rbp - 0x18]
mov r8d, edx
xor r8d, 0xffffffff
and r8d, 0x5e4a779d
mov r9d, 0xffffffff
xor r9d, 0x5e4a779d
mov ecx, edx
and ecx, r9d
imul ecx, r8d
mov r9d, 0x9e8f942e
xor r9d, 0xc0c5e3b3
mov r8d, edx
and r8d, r9d
or edx, 0x5e4a779d
imul edx, r8d
add edx, ecx
xor edx, 0x8397b641
mov ecx, edx
and ecx, ecx
xor ecx, 0xffffffff
mov r8d, 0x13af1865
xor r8d, 0x550ccc08
and ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x46a3d46d
and r8d, 0x46a3d46d
xor r8d, 0xffffffff
mov r9d, 0xcea101bf
xor r9d, 0x315efe40
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
mov dword [rbp - 0x68], ecx
mov rcx, qword [rax + 0x60]
mov qword [rbp + 0x10], rcx
mov rax, qword [rax + 0x68]
mov qword [rbp + 0x18], rax
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.140017970
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rcx, qword [rax + 0x70]
mov qword [rbp], rcx
mov rax, qword [rax + 0x78]
mov qword [rbp + 8], rax
mov rcx, rbp
sub rsp, 0x20
call fcn.140060dd0
mov rcx, qword [rbp - 0x10]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0xc7859870
ja 0x1400e6501
mov al, byte [rbp - 0x61]
test al, 1
jne 0x1400e6618
jmp 0x1400e68d2
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 0x80]
mov qword [rcx], rdx
mov rax, qword [rax + 0x88]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140060dd0
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xb9
xor cl, 0xb9
cmp al, cl
jne 0x1400e68d2
mov ecx, dword [0x1401de4a8]
mov edx, dword [0x1401de4ac]
xor edx, 0x71890c42
mov r8d, 0x491143d4
xor r8d, 0xb6eebc2b
mov eax, ecx
xor eax, r8d
mov r9d, 0xe9ff5d56
xor r9d, 0x1600a2a9
mov r8d, ecx
xor r8d, r9d
or eax, r8d
xor eax, 0xffffffff
mov r9d, 0x23e7eb74
xor r9d, 0xdc18148b
mov r8d, edx
xor r8d, r9d
or eax, r8d
and edx, edx
xor edx, 0xffffffff
mov r8d, 0xc988909b
xor r8d, 0x36776f64
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
mov edx, 0x4dfae107
xor edx, 0xb2051ef8
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x196f847b
mov r8d, 0xffffffff
xor r8d, 0x196f847b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x196f847b
mov r8d, 0x22a0d33c
xor r8d, 0x3bcf5747
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xe7b19293
xor ecx, 0x184e6d6c
mov edx, eax
xor edx, ecx
mov ecx, 0x66314a08
xor ecx, 0xace3f0a4
and ecx, edx
mov edx, 0xffffffff
xor edx, 0xcad2baac
and eax, edx
or ecx, eax
mov edx, 0x3938fc99
xor edx, 0xd7febff9
mov eax, ecx
and eax, edx
or ecx, 0xeec64360
add eax, ecx
mov ecx, 0x8213276f
xor ecx, 0xba106e28
cmp eax, ecx
je 0x1400e690e
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401de4b0]
and eax, dword [0x1401de4b4]
mov r8d, 0x3d58d705
xor edx, edx
div r8d
and eax, 0x5daff0d9
xor edx, edx
sub edx, eax
mov eax, 0xcedeac22
xor eax, 0xcedeac22
mov r8d, 0x12a244df
xor r8d, 0x8dfe06f5
sub eax, r8d
add edx, eax
mov eax, 0xf8e52b75
xor eax, 0xf8e52b75
sub eax, edx
mov rcx, qword [rcx + 0xa0]
mov qword [rbp - 0x78], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xe14d4982
ja 0x1400e6766
mov al, byte [rbp - 0x69]
test al, 1
jne 0x1400e680e
jmp 0x1400e67e2
mov rcx, qword [rbp - 0x78]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400e680e
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0xb0]
mov qword [rbp - 0x80], rax
cmp rax, 0
je 0x1400e68d2
mov rax, qword [rbp - 0x80]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x658dd70424626192
movabs r8, 0x258dd70424626192
xor rdx, r8
and rcx, rdx
movabs rdx, 0x7bc0455471756b47
movabs r8, 0x843fbaab8e8a94b8
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xc5147854b1bcb005
movabs r8, 0x3aeb87ab4e434ffa
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
movabs rcx, 0x11aecf92651006fd
movabs rdx, 0x11aecf92651006fd
xor rcx, rdx
cmp rax, rcx
jne 0x1400e68d2
mov rcx, qword [rbp - 0x80]
sub rsp, 0x20
sub esp, 0x20
call fcn.14000de03
add rsp, 0x20
lea rsp, [rbp + 0x20]
pop rbp
ret
or al, 0x84
stosb byte [rdi], al
jno 0x1400e68c6
push rsi
cmc
invalid
xchg ebx, eax
cmpsb byte [rsi], byte [rdi]
mov cl, cl
jmp 0x1400e5fae
movabs dword [0xfffff805e9b06ab7], eax
ret 0x8ec1
jmp 0x1400e6912
xchg esi, eax
mov bl, 0x16
sub cl, 0xf3
sti
invalid
cli
je 0x1400e692e
mov ecx, ebp
invalid
jmp 0x1400e6766
add byte [rbx + 0xf7b8705], cl
add byte [rcx - 0x29371f3f], al
sub al, byte [rcx]
rol dword [rcx - 0x29371f17], 0x2a
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x41518412
mov edx, 0xffffffff
xor edx, 0x41518412
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x43abbb0
xor ecx, 0x176ee2a3
and eax, ecx
and eax, eax
mov ecx, 0x353df8f4
xor ecx, 0xcac2070b
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x58e62763
mov edx, 0xf5551af6
xor edx, 0xadb33d95
mov r8d, 0xfcf05722
xor r8d, 0x30fa8dd
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x1318f398
xor ecx, 0xb2e40084
cmp eax, ecx
ja 0x1400e6a76
mov eax, dword [0x1401de4c0]
sub eax, dword [0x1401de4c4]
or eax, 0x9e1ff2b4
mov ecx, 0x3163d786
xor ecx, 0xc2f4767e
and eax, ecx
mov ecx, 0x473ba71f
xor ecx, 0xda5dab3a
mov edx, 0x54294f2e
xor edx, 0xabd6b0d1
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov dword [rsp + 0x28], eax
call fcn.1400e5b5d
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.1400e6a80
mov cl, al
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x2f], cl
cmp eax, 0xef343caf
je 0x1400e69c6
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400e6a43
jmp 0x1400e6a70
mov rcx, qword [rsp + 0x30]
call fcn.1400e5d60
mov rax, qword [rsp + 0x20]
mov al, byte [rax]
mov cl, 0x92
xor cl, 0x92
cmp al, cl
jne 0x1400e6a70
mov rcx, qword [rsp + 0x30]
mov edx, 8
call fcn.14000de70
nop
add rsp, 0x38
ret
mov dword [rdi + 0x47e90471], edi
invalid