Function at 0x140069e60
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x128
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xa0], rcx
mov eax, dword [0x1401d8108]
xor eax, 0x73746197
mov ecx, dword [0x1401d810c]
mov edx, eax
and edx, ecx
or eax, ecx
add edx, eax
mov eax, 0xc95e4a2e
xor eax, 0xecdab131
mov ecx, edx
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x2584fb1f
and edx, eax
mov eax, 0x1c76a9d5
xor eax, 0x1c76a9d7
imul eax, edx
sub eax, ecx
sub eax, 0xada3dd4
mov ecx, 0x11f13707
xor edx, edx
div ecx
cmp eax, 0xb3a383b9
je 0x14006afd6
mov eax, dword [0x1401d8110]
mov ecx, dword [0x1401d8114]
and eax, ecx
and eax, 0x3d35463b
add eax, 0x2f55f92d
mov dword [rbp + 0x98], eax
mov eax, 0x10
mov qword [rbp + 0x78], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x78]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x78]
mov rcx, rsp
mov qword [rbp + 0x70], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x78]
mov rcx, rsp
mov qword [rbp + 0x80], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x88], rax
sub rsp, 0x20
call fcn.14006624b
mov rcx, qword [rbp + 0xa0]
add rsp, 0x20
mov qword [rbp + 0x90], rax
sub rsp, 0x20
call fcn.14003527a
mov rcx, qword [rbp + 0x90]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x98]
mov byte [rbp + 0x9e], dl
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x9f], cl
cmp eax, 0xa4334caf
je 0x14006afd6
mov al, byte [rbp + 0x9f]
test al, 1
jne 0x140069faf
jmp 0x14006afcc
mov al, byte [rbp + 0x9e]
add al, 0x80
movzx ecx, al
mov qword [rbp + 0x60], rcx
test al, al
js 0x14006a18c
mov rax, qword [rbp + 0x60]
lea rcx, [0x14006b020]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ecx, dword [0x1401d8118]
mov edx, dword [0x1401d811c]
mov r8d, 0x2dc99544
xor r8d, 0x2dc99545
mov eax, ecx
add eax, r8d
xor ecx, 0xffffffff
or ecx, edx
add ecx, eax
mov eax, 0x4b22b3c5
xor eax, 0x7a51c2a9
sub ecx, eax
mov eax, 0x2f277756
xor eax, 0x836c0715
sub ecx, eax
add ecx, 0x3173716c
mov eax, 0xffffffff
xor eax, 0xe8a6e5e3
add ecx, eax
add ecx, 1
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x2cae3d9f
mov edx, 0xffffffff
xor edx, 0x2cae3d9f
and ecx, edx
or eax, ecx
mov ecx, 0x9534ae9b
xor ecx, 0xf92ff233
cmp eax, ecx
jbe 0x14006afdf
mov rcx, qword [rbp + 0xa0]
mov esi, dword [0x1401d8120]
xor esi, 0x98e5c2d1
mov edx, dword [0x1401d8124]
mov eax, esi
xor eax, edx
xor eax, 0xffffffff
mov r8d, edx
and r8d, eax
mov eax, 0x9a36e271
xor eax, 0x9a36e273
imul eax, r8d
sub eax, edx
sub esi, eax
mov eax, esi
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x5902b0dc
mov r8d, 0xffffffff
xor r8d, 0x87105c96
mov edx, eax
and edx, 0x87105c96
and esi, r8d
mov r11d, 0xefd8e947
xor r11d, 0x68c8b5d1
mov r10d, r9d
and r10d, r11d
mov r11d, r8d
and r11d, 0x5902b0dc
or edx, esi
or r10d, r11d
xor edx, r10d
or eax, r9d
xor eax, 0xffffffff
or r8d, 0x87105c96
and eax, r8d
or edx, eax
mov eax, 0x380fb42
xor eax, 0x1270d26a
or edx, eax
mov eax, edx
or eax, eax
mov r8d, 0x4f1a1846
xor r8d, 0xb0e5e7b9
xor eax, r8d
mov r8d, 0x81883ab3
xor r8d, 0xe47c49ff
mov r9d, 0x73f79d9a
xor r9d, 0x8c086265
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x65f4734c
and r8d, r9d
or eax, r8d
mov r8d, 0x7a6a5823
xor r8d, 0x8595a7dc
xor eax, r8d
mov r8d, 0x8e41088f
xor r8d, 0xebb57bc3
or edx, r8d
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov dword [rbp + 0x5c], eax
sub rsp, 0x20
call fcn.14003530a
add rsp, 0x20
mov eax, dword [rbp + 0x5c]
cmp eax, 0x724091b8
jb 0x14006a058
jmp 0x14006afcc
mov eax, dword [0x1401d8128]
xor eax, 0x6b698f61
mov ecx, dword [0x1401d812c]
xor ecx, 0x404b8723
mov edx, 0xdd287fbc
xor edx, 0x3039236f
add eax, edx
add eax, ecx
mov ecx, 0xdd965bd8
xor ecx, 0x3087070b
sub eax, ecx
mov ecx, 0x9f63b332
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xc3e1fa9b
mov edx, 0xffffffff
xor edx, 0xc3e1fa9b
and eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xc18e4424
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
cmp eax, 0x2ab1b6a5
jb 0x14006afe8
mov cl, byte [rbp + 0x9e]
mov eax, dword [0x1401d8130]
imul eax, dword [0x1401d8134]
mov edx, 0xae0ec962
xor edx, 0x8c6f9980
or eax, edx
imul eax, eax, 0xbcdd6eba
xor eax, 0xd538b33d
mov dl, 0x15
xor dl, 0xea
cmp cl, dl
setg cl
mov byte [rbp + 0x5b], cl
cmp eax, 0x22caaa37
jbe 0x14006a201
mov al, byte [rbp + 0x5b]
test al, 1
jne 0x140069fda
jmp 0x14006af6c
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140068360
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x50], rcx
mov al, byte [rax]
mov cl, 0x7d
xor cl, 0x7d
cmp al, cl
jne 0x14006afcc
mov r8, qword [rbp + 0x50]
mov rax, r8
dec rax
mov qword [rbp + 0x40], rax
mov rdx, r8
neg rdx
mov rcx, rax
xor rdx, rcx
and rdx, r8
xor rdx, rcx
test rax, rax
setns cl
or rax, rdx
sets al
add cl, al
inc cl
xor eax, eax
test cl, 1
mov qword [rbp + 0x48], rax
jne 0x14006a2c9
jmp 0x14006a2db
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x14006afcc
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x38], rax
cmp rax, rcx
jg 0x14006afcc
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140069e60
mov rax, qword [rbp + 0x90]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14006afcc
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140069e60
mov rax, qword [rbp + 0x90]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14006afcc
mov rcx, qword [rbp + 0x38]
mov rdx, rcx
and rdx, 1
shl rdx, 1
mov rax, rcx
xor rax, 1
add rax, rdx
mov rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r9, 0x629528cb363a70e1
movabs r8, 0x9d6ad734c9c58f1e
xor r9, r8
mov r8, rcx
xor r8, r9
or rdx, r8
and rdx, 0xffffffffffffffff
movabs r8, 0xc87cfd04368f7f01
movabs r9, 0x378302fbc97080fe
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0x89aa821e3f2276f
movabs r10, 0xf76557de1c0dd890
xor r9, r10
movabs r10, 0xed0eb6abf1422c68
movabs r11, 0x12f149540ebdd397
xor r10, r11
xor r9, r10
or r8, r9
and rcx, r8
movabs r8, 0x41464576736f617a
movabs r9, 0xbeb9ba898c909e85
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0xb9bc97ffe430970a
movabs r8, 0xb9bc97ffe430970a
xor rdx, r8
cmp rcx, rdx
mov qword [rbp + 0x48], rax
jge 0x14006a2db
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x14006afcc
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140068600
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x30], rcx
cmp byte [rax], 0
jne 0x14006afcc
mov eax, dword [0x1401d8138]
sub eax, dword [0x1401d813c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4f366c20
mov r8d, 0xffffffff
xor r8d, 0x4f366c20
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x4f366c20
or eax, 0x4f366c20
imul eax, edx
add eax, ecx
xor eax, 0x6db7a3e4
mov ecx, 0x7f71e7f5
xor ecx, 0x808e180a
mov edx, eax
xor edx, ecx
and edx, 0xb99b8e6b
mov r8d, 0xffffffff
xor r8d, 0xb99b8e6b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb99b8e6b
or eax, 0xb99b8e6b
imul eax, edx
add eax, ecx
mov ecx, 0xde941412
xor ecx, 0x341aac31
cmp eax, ecx
ja 0x14006aff1
mov r9, qword [rbp + 0x30]
mov edx, dword [0x1401d8140]
mov ecx, dword [0x1401d8144]
mov eax, edx
xor eax, ecx
mov r8d, 0x3f0da9f1
xor r8d, 0xc0f2560e
xor ecx, r8d
and edx, ecx
mov ecx, 0xa9a0d8f5
xor ecx, 0xa9a0d8f7
imul ecx, edx
sub ecx, eax
mov edx, 0x15c24c96
xor edx, 0xea3db369
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x3184a94f
or eax, edx
mov edx, 0xb5ff3712
xor edx, 0x847b9e5d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x595a603c
xor edx, 0xa6a59fc3
xor ecx, edx
or eax, ecx
mov ecx, 0x670244ca
xor ecx, 0xba30d278
add eax, ecx
add eax, 0x5b5615d4
mov ecx, 0xcc1112de
xor ecx, 0x1123846c
sub eax, ecx
mov ecx, 0x486099e8
xor ecx, 0xb79f6617
mov edx, eax
xor edx, ecx
and edx, 0x49a765f8
mov r8d, 0xffffffff
xor r8d, 0x49a765f8
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x49a765f8
mov r8d, 0xd8e023dd
xor r8d, 0x91474625
or eax, r8d
imul eax, edx
add eax, ecx
movabs rdx, 0xf9c2689f2c930f10
movabs rcx, 0x63d9760d36cf0ef
xor rdx, rcx
mov rcx, r9
and rcx, rdx
mov rdx, r9
or rdx, 0xffffffffffffffff
add rcx, rdx
mov qword [rbp + 0x20], rcx
mov rdx, rcx
xor rdx, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, r9
or r8, r8
xor r8, 0xffffffffffffffff
or rdx, r8
xor rdx, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
cmp rdx, 0
setl dl
cmp rcx, 0xffffffffffffffff
setg cl
and cl, dl
mov byte [rbp + 0x2f], cl
cmp eax, 0xefa846db
je 0x14006a4f6
mov cl, byte [rbp + 0x2f]
xor eax, eax
test cl, 1
mov qword [rbp + 0x18], rax
jne 0x14006a667
jmp 0x14006a679
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x14006afcc
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x10], rax
cmp rax, rcx
jg 0x14006afcc
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140069e60
mov rax, qword [rbp + 0x90]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xeb
xor cl, 0xeb
cmp al, cl
jne 0x14006afcc
mov rdx, qword [rbp + 0x10]
mov rax, rdx
add rax, 1
xor rdx, 0xffffffffffffffff
mov rcx, rax
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x18], rax
jge 0x14006a679
sub rsp, 0x20
call fcn.1400077a3
add rsp, 0x20
jmp 0x14006afcc
mov rcx, qword [rbp + 0xa0]
sub rsp, 0x20
call fcn.140068840
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 8], rcx
cmp byte [rax], 0
jne 0x14006afcc
mov ecx, dword [0x1401d8148]
mov eax, dword [0x1401d814c]
mov edx, 0x9d437fc5
xor edx, 0x78594d6c
xor eax, edx
sub ecx, eax
add ecx, 0xb2b2a590
add ecx, 0x8a9b67c6
mov edx, 0x1b7ad263
xor edx, 0x2a1d9d1d
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
mov edx, 0x98dfdf2e
xor edx, 0xa9b89050
and ecx, edx
xor ecx, 0xffffffff
mov edx, 0x50cf3b32
xor edx, 0xaf30c4cd
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x4bc5ca76
je 0x14006affa
mov rcx, qword [rbp + 0x68]
mov r8, qword [rbp + 8]
mov rdx, qword [rbp + 0xa0]
mov eax, dword [0x1401d8150]
mov r11d, dword [0x1401d8154]
mov r9d, eax
xor r9d, 0xffffffff
mov r10d, r11d
and r10d, r9d
mov r9d, 0xf11283ed
xor r9d, 0xeed7c12
mov esi, r11d
xor esi, r9d
mov r9d, eax
and r9d, esi
imul r9d, r10d
mov r10d, eax
and r10d, r11d
or eax, r11d
imul eax, r10d
add eax, r9d
mov r10d, eax
or r10d, r10d
mov r9d, 0x82ecca2c
xor r9d, 0x7d1335d3
xor r10d, r9d
mov r9d, 0xb08feb10
or r9d, 0xb08feb10
xor r9d, 0xffffffff
xor r10d, 0xffffffff
mov r11d, 0x5414d0a3
xor r11d, 0xabeb2f5c
xor r9d, r11d
and r10d, r9d
or eax, 0xb08feb10
xor eax, 0xffffffff
xor r10d, 0xffffffff
xor eax, 0xffffffff
and r10d, eax
mov r9d, r10d
xor r9d, 0xcffc7416
mov eax, 0xffffffff
xor eax, 0xcffc7416
and r10d, eax
mov eax, 0xfa972751
xor eax, 0xfa972753
imul eax, r10d
sub eax, r9d
sub eax, 0x5b69cee9
mov dword [rbp - 0xc], eax
mov eax, 0x41e37c43
xor eax, 0xe77b2635
mov dword [rbp - 0x10], eax
sub rsp, 0x20
call fcn.140068a9d
mov rdx, qword [rbp + 0x68]
mov ecx, dword [rbp - 0x10]
mov eax, dword [rbp - 0xc]
add rsp, 0x20
mov rdx, qword [rdx + 8]
mov qword [rbp - 8], rdx
cmp rdx, 0
sete dl
mov byte [rbp + 7], dl
cmp eax, ecx
je 0x14006affa
mov al, byte [rbp + 7]
test al, 1
jne 0x14006afcc
jmp 0x14006a8a2
mov eax, dword [0x1401d8158]
xor eax, 0x2cdf74ab
or eax, dword [0x1401d815c]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xaffff766
xor edx, 0xb5a7da56
mov r8d, 0x5146e821
xor r8d, 0x4b1ec511
or edx, r8d
xor edx, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xc4bc8a87
xor edx, 0xdee4a7b7
mov r8d, 0xeada1d56
xor r8d, 0x1525e2a9
xor edx, r8d
and eax, edx
mov edx, 0x9b262e1e
xor edx, 0x64d9d1e1
xor ecx, edx
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
and eax, 0xa4c0f9a0
mov edx, 0x3678c5a2
xor edx, 0xc9873a5d
xor eax, edx
add ecx, 0xa4c0f9a0
add ecx, 1
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x9fefa20b
mov edx, 0x6cd3f598
xor edx, 0xf33c5793
mov r8d, 0x2a0e11f3
xor r8d, 0xd5f1ee0c
xor edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0xe1a99a0
je 0x14006b003
mov rcx, qword [rbp - 8]
mov eax, dword [0x1401d8160]
xor eax, 0x7c5a7685
xor edx, edx
div dword [0x1401d8164]
mov r8d, 0xb6241224
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x61c73aeb
mov r8d, 0xd7a41ddb
xor r8d, 0xb6632730
mov r9d, 0x8446a564
xor r9d, 0x7bb95a9b
xor r8d, r9d
and edx, r8d
or eax, edx
add eax, 0xb7103aa8
mov edx, 0xab3f8cc9
xor edx, 0x7890ce3
sub eax, edx
sub eax, 0xb7103aa8
mov rcx, qword [rcx]
mov rdx, rcx
add rdx, 1
movabs r8, 0xe0590a034fc169f8
movabs r9, 0x1fa6f5fcb03e9607
xor r8, r9
xor rcx, r8
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0x1b572008
jb 0x14006a962
mov al, byte [rbp - 0x11]
test al, 1
jne 0x14006aa22
jmp 0x14006afcc
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
jmp 0x14006afcc
lea rcx, [0x1401e96c8]
sub rsp, 0x20
call fcn.140068b6e
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp - 0x80], rcx
mov al, byte [rax]
mov cl, 0x7f
xor cl, 0x7f
cmp al, cl
jne 0x14006afcc
mov rcx, qword [rbp - 0x80]
lea rdx, [0x1401e9615]
lea r8, [0x1401e9665]
lea r9, [0x1401e9605]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffff8588a9f
call fcn.14001331d
add rsp, 0x30
lea rsp, [rbp + 0xa8]
pop rsi
pop rbp
ret
mov ecx, dword [rcx]
lahf
mov edx, 0xffeef4e9
jmp rbp
in eax, 0x30
invalid
ror dword [rdx - 0x14], 1
and eax, 0xfff210e9
invalid
cld
pop rcx
insb byte [rdi], dx
int 0xe9
cld
hlt
int 0xb0
xchg ebx, eax
jmp 0x14006a77e
and esp, dword [rax + rcx*8]
shr cl, cl
push rsi
stc
invalid