Function at 0x14009f1b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x28], r8
mov qword [rbp - 0x48], rdx
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x38], rcx
mov eax, 0x10
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.14009cbcd
mov r8, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp - 0x20], rax
xor eax, eax
test r8, r8
cmovg rax, r8
mov qword [rbp - 0x18], rax
xor eax, eax
mov rcx, rax
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rax
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], rax
mov r8d, dword [0x14021b048]
mov ecx, dword [0x14021b04c]
xor ecx, 0x5df4f496
mov eax, r8d
xor eax, ecx
xor eax, 0xffffffff
or r8d, ecx
and r8d, eax
or r8d, 0x5d5a15f7
mov eax, 0x29e4e4d
xor eax, 0xdb3cc024
mov ecx, r8d
and ecx, eax
mov eax, 0xd3723349
xor eax, 0xd372334b
imul eax, ecx
add r8d, 0xd9a28e69
sub r8d, eax
mov ecx, 0x61523da9
xor ecx, 0x9eadc256
mov eax, r8d
xor eax, ecx
and eax, 0xd234fb68
mov edx, 0xfaeb4984
xor edx, 0x28dfb2ec
mov ecx, 0xa4951dd3
xor ecx, 0x5b6ae22c
xor edx, ecx
and r8d, edx
mov ecx, 0x7753f9d7
xor ecx, 0xaa2d4056
mov r9d, 0x4be52bb3
xor r9d, 0xb41ad44c
xor ecx, r9d
and ecx, 0xd234fb68
and edx, 0xdd7eb981
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xe34a2692
je 0x14009f828
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x18]
mov eax, dword [0x14021b050]
or eax, dword [0x14021b054]
sub eax, 0x5f0e5de7
xor eax, 0xfdcd150b
mov r8d, 0xaf52ad83
xor r8d, 0xfc22dfe1
sub eax, r8d
cmp rcx, rdx
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0xf642f37c
ja 0x14009f2da
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14009f400
jmp 0x14009f32c
mov rax, qword [rbp - 0x58]
mov r8, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x48]
mov rdx, rax
shl rdx, 4
add rcx, rdx
mov r9, qword [rcx]
mov rcx, r9
add rcx, r8
mov rdx, rcx
xor rdx, r8
mov r8, rcx
xor r8, r9
xor r8, 0xffffffffffffffff
mov r10, r9
and r10, r8
movabs r8, 0x5b160035eb2029f0
movabs r11, 0x5b160035eb2029f2
xor r8, r11
imul r8, r10
sub r8, r9
mov r9, rcx
sub r9, r8
movabs r10, 0x9b26228c6ed686c
movabs r8, 0x9b26228c6ed686d
xor r10, r8
mov r8, rdx
add r8, r10
movabs r10, 0x31aac7ecb49d647f
movabs r11, 0xce5538134b629b80
xor r10, r11
xor rdx, r10
or rdx, r9
add rdx, r8
movabs r8, 0xb8daa3ed4cea2b38
movabs r9, 0xb8daa3ed4cea2b38
xor r8, r9
add rax, 1
cmp rdx, r8
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rax
jge 0x14009f213
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x14009f757
mov rax, qword [rbp - 0x50]
movabs rcx, 0x43c667421d6c44af
movabs rdx, 0x43c667421d6c44af
xor rcx, rdx
cmp rax, rcx
jge 0x14009f448
mov rcx, qword [rbp - 0x50]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x14009f757
mov ecx, dword [0x14021b058]
mov edx, dword [0x14021b05c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0x4531cae2
xor r9d, 0xbace351d
mov r8d, edx
xor r8d, r9d
and eax, r8d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x97a87f73
xor edx, 0x6857808c
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x871f5fee
xor ecx, 0x202b2604
mov edx, 0xc9c9235d
xor edx, 0x3636dca2
xor ecx, edx
add eax, ecx
add eax, 1
xor eax, 0x689c68e6
mov edx, eax
xor edx, 0xffffffff
and edx, 0x77a60447
mov r8d, 0x9ddd92b4
xor r8d, 0xea7b96f3
mov ecx, 0xe207f64a
xor ecx, 0x1df809b5
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x77a60447
or eax, 0x77a60447
imul eax, edx
add eax, ecx
cmp eax, 0xe812a8a2
ja 0x14009f831
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x40]
mov r8d, dword [0x14021b060]
mov r9d, dword [0x14021b064]
mov r10d, r8d
xor r10d, 0xffffffff
mov eax, r9d
and eax, r10d
xor r9d, 0xffffffff
and r8d, r9d
or eax, r8d
or eax, 0xf6e75dc1
mov r8d, 0x949e6533
xor r8d, 0x10e8c145
sub eax, r8d
mov r8d, 0x212f4955
xor r8d, 0xded0b6aa
mov r9d, eax
xor r9d, r8d
and r9d, 0x5635a0d6
mov r10d, 0x6b9e8ba4
xor r10d, 0x3dab2b72
mov r8d, 0xb382909
xor r8d, 0xf4c7d6f6
xor r10d, r8d
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x5635a0d6
mov r10d, 0x72e89890
xor r10d, 0x24dd3846
or eax, r10d
imul eax, r9d
add eax, r8d
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.14001efd0
mov rcx, qword [rbp - 0x30]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
movabs rdx, 0x6ba7cc72a6281915
movabs r8, 0x6ba7cc72a6281915
xor rdx, r8
mov qword [rcx], rdx
cmp eax, 0x29104ec2
jbe 0x14009f4f3
xor eax, eax
mov qword [rbp - 0x68], rax
jmp 0x14009f5de
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x70], rax
cmp rax, rcx
je 0x14009f757
mov eax, dword [0x14021b068]
or eax, dword [0x14021b06c]
xor ecx, ecx
sub ecx, 0xeda543b9
sub eax, ecx
xor eax, 0x31e34e62
add eax, 0x6d1b1fb0
cmp eax, 0x57fb8db4
jbe 0x14009f83a
mov r8, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x40]
mov edx, dword [0x14021b070]
mov r9d, dword [0x14021b074]
mov r10d, 0x4e9ec1bc
xor r10d, 0xb1613e43
mov eax, edx
xor eax, r10d
mov r11d, 0x3084fec2
xor r11d, 0xcf7b013d
mov r10d, r9d
xor r10d, r11d
and eax, r10d
mov r10d, 0x62378706
xor r10d, 0x9dc878f9
xor edx, r10d
mov r10d, 0xb8974a89
xor r10d, 0x4768b576
xor r9d, r10d
and edx, r9d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
sub eax, 0x699f3dd7
mov r9d, 0x2b599a47
xor r9d, 0xbda71f1b
xor edx, edx
div r9d
mov rdx, qword [rbp - 0x30]
mov r9d, eax
mov rax, qword [rbp - 0x48]
xor r9d, 0x80af78c1
mov dword [rbp - 0x80], r9d
shl r8, 4
add rax, r8
mov r8, qword [rax]
mov qword [rbp], r8
mov rax, qword [rax + 8]
mov qword [rbp + 8], rax
mov r8, rbp
sub rsp, 0x20
call fcn.14009d6f0
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x70]
mov eax, dword [rbp - 0x80]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x79], dl
mov rdx, 0xffffffffffffffff
xor rdx, 1
movabs r8, 0xba193e7c5ed2e440
movabs r9, 0xba193e7c5ed2e440
xor r8, r9
movabs r9, 0x73089fb0ea09f39
movabs r10, 0x73089fb0ea09f38
xor r9, r10
sub r8, r9
sub rdx, r8
sub rcx, rdx
mov qword [rbp - 0x78], rcx
cmp eax, 0xad3f7de1
ja 0x14009f61e
mov rax, qword [rbp - 0x78]
mov cl, byte [rbp - 0x79]
test cl, 1
mov qword [rbp - 0x68], rax
jne 0x14009f5de
jmp 0x14009f757
mov ecx, dword [0x14021b078]
xor ecx, 0x813da2ce
mov edx, dword [str._bGF]
mov eax, ecx
xor eax, edx
xor edx, 0xffffffff
and ecx, edx
shl ecx, 1
sub ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x6bf315a5
xor eax, 0xbc76c31a
and eax, edx
mov edx, 0x96d3ba34
xor edx, 0x41566c8b
mov r8d, 0x11e5ea7
xor r8d, 0xfee1a158
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x5b561503
xor edx, edx
div ecx
mov edx, eax
mov ecx, edx
xor ecx, 0xe4feb2bd
mov eax, 0xffffffff
xor eax, 0xe4feb2bd
and edx, eax
mov eax, 0xf618bb20
xor eax, 0xf618bb22
imul eax, edx
sub eax, ecx
cmp eax, 0xf42019f6
jae 0x14009f843
mov eax, dword [0x14021b080]
xor eax, 0xd35c0d1b
sub eax, dword [0x14021b084]
add eax, 0xdb214e02
sub eax, 0x2abfcbf3
sub eax, 0xdb214e02
imul eax, eax, 0xdcd91e13
sub eax, 0x8f7dec63
mov ecx, 0x65841be5
xor ecx, 0xc2798de0
cmp eax, ecx
jae 0x14009f843
mov rax, qword [rbp - 0x38]
lea rsp, [rbp + 0x10]
pop rbp
ret
in al, dx
add dh, byte [rsi - 0x5561700]
invalid
invalid
mov r14d, 0xdbe912bc
std
invalid
in eax, 0xeb
int 0x58
jmp 0x14009f7e0