Function at 0x1400b6600
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xe8
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0xb8], r8
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xc0]
mov rax, qword [rcx]
mov qword [rsp + 0xc8], rax
add rcx, 8
mov qword [rsp + 0xd0], rcx
cmp r8, 0
setg al
mov byte [rsp + 0xdf], al
mov qword [rsp + 0xe0], r9
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xa0], rax
cmp rax, rcx
jge 0x1400b6afe
mov rax, qword [rsp + 0xa0]
cmp rax, 0
jl 0x1400b6acc
mov cl, byte [rsp + 0xdf]
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
mov al, byte [rax + rdx + 8]
mov byte [rsp + 0x97], al
xor eax, eax
test cl, 1
mov qword [rsp + 0x98], rax
jne 0x1400b682c
jmp 0x1400b69d1
mov eax, dword [0x140277618]
mov ecx, 0x96d9267d
xor ecx, 0x5b43bc57
xor eax, ecx
xor edx, edx
div dword [0x14027761c]
sub eax, 0x15471323
sub eax, 0x55043759
sub eax, 0x4fa43e93
add eax, 0x55043759
mov ecx, 0xb81fb2b7
xor ecx, 0xdad46931
sub eax, ecx
cmp eax, 0x3ed081e2
je 0x1400b6d61
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x140277620]
mov r9d, dword [0x140277624]
mov r8d, 0x1413339f
xor r8d, 0xdcb3e222
xor r9d, r8d
mov r8d, eax
xor r8d, r9d
mov r10d, 0x7f22e09c
xor r10d, 0x80dd1f63
xor r8d, r10d
mov r10d, r9d
and r10d, r8d
mov r8d, 0xffb4d82b
xor r8d, 0xffb4d829
imul r8d, r10d
sub r8d, r9d
sub eax, r8d
sub eax, 0x8adbcae6
and eax, 0xf8bce81f
mov r8d, 0x1ce4077
xor r8d, 0xa1f860db
sub eax, r8d
sub eax, 0xd8b9604a
mov r8d, 0xbf6008d3
xor r8d, 0x1f56287f
add eax, r8d
movabs r9, 0xc395eb8f2a0fd904
movabs r8, 0xc395eb8f2a0fd905
xor r9, r8
mov r8, rcx
and r8, r9
shl r8, 1
xor rcx, 1
add rcx, r8
mov qword [rsp + 0x78], rcx
cmp rcx, rdx
sete cl
mov byte [rsp + 0x87], cl
cmp eax, 0xa251527e
jbe 0x1400b6d61
mov rax, qword [rsp + 0x78]
mov cl, byte [rsp + 0x87]
test cl, 1
mov qword [rsp + 0x98], rax
jne 0x1400b69d1
jmp 0x1400b682c
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x70], rax
mov eax, dword [0x140277628]
mov r8d, dword [0x14027762c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x7e5d5ab8
xor ecx, 0xeacb61a2
or eax, ecx
mov ecx, 0xc8792f8
xor edx, edx
div ecx
mov ecx, 0x70086323
xor edx, edx
div ecx
cmp eax, 0x9f2d15a1
ja 0x1400b6d6a
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x70]
mov r8b, byte [rsp + 0x97]
mov eax, dword [0x140277630]
xor eax, dword [0x140277634]
mov r9d, 0xb84b21fa
xor r9d, 0xb2879ce5
sub eax, r9d
sub eax, 0x8babb632
add eax, 0xaccbd1f
mov r9d, 0x675ecc0b
xor r9d, 0x4ff16fc8
xor eax, r9d
add eax, 0x723b1592
cmp byte [rcx + rdx], r8b
sete cl
mov byte [rsp + 0x6f], cl
cmp eax, 0x990de389
je 0x1400b6894
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x1400b690b
jmp 0x1400b66f2
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x88]
cmp rcx, 0
mov qword [rsp + 0x60], rax
je 0x1400b6d54
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x88]
mov r8, qword [rcx]
movabs r9, 0x7249b93b8755f4e6
movabs rdx, 0x3249b93b8755f4e6
xor r9, rdx
mov rdx, r8
and rdx, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
movabs r10, 0x4000000000000000
xor r9, r10
or r8, r9
movabs r9, 0x5c87cf871297a426
movabs r10, 0xa3783078ed685bd9
xor r9, r10
xor rdx, r9
movabs r9, 0x9a0ec41239a57773
movabs r10, 0x65f13bedc65a888c
xor r9, r10
xor r8, r9
or rdx, r8
cmp rdx, 0
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
je 0x1400b6c74
jmp 0x1400b6d54
mov rcx, qword [rsp + 0xa0]
movabs rdx, 0xe5d92864e77683bf
movabs rax, 0x617600bbf8ca5cc
xor rdx, rax
mov rax, rcx
sub rax, rdx
add rax, 1
movabs rdx, 0xe3ce486f58fa2673
add rax, rdx
mov rdx, rcx
and rdx, rdx
movabs r8, 0x40d42683cdcdd6e7
movabs r9, 0xbf2bd97c32322918
xor r8, r9
xor rdx, r8
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
xor rcx, 0xffffffffffffffff
movabs r9, 0xcb13b03c2600c2
movabs r10, 0xff34ec4fc3d9ff3d
xor r9, r10
xor r8, r9
or rcx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x87920d32684054e0
movabs r9, 0x786df2cd97bfab1f
xor r8, r9
xor rcx, r8
or rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0xb3a72d47de6a02ed
movabs r8, 0xb3a72d47de6a02ed
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0xe0], rax
jge 0x1400b667a
call fcn.14000f24b
jmp 0x1400b6c23
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xc8]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.1400292ad
jmp 0x1400b6c23
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax]
mov qword [rsp + 0x48], rcx
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rsp + 0x60], rax
je 0x1400b6d54
mov eax, dword [0x140277638]
mov edx, dword [0x14027763c]
mov r8d, 0x9997c092
xor r8d, 0x9997c093
mov ecx, eax
add ecx, r8d
xor eax, 0xffffffff
or eax, edx
add eax, ecx
sub eax, 0x89828f77
sub eax, 0x566d5aa7
add eax, 0x89828f77
mov ecx, 0xa21ed97c
xor edx, edx
div ecx
mov ecx, 0xf4f671e1
xor edx, edx
div ecx
cmp eax, 0x1d6fb15b
ja 0x1400b6d73
mov eax, dword [0x140277640]
xor eax, 0x160bc26a
mov ecx, dword [0x140277644]
mov edx, 0x82381c31
xor edx, 0xb9460f12
xor ecx, edx
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
sub ecx, 0x18d6f8a0
add eax, ecx
sub eax, 0xb8ba7f9a
mov ecx, 0xa63724c0
xor ecx, 0xdf7ed368
xor eax, ecx
mov ecx, 0x606458bf
xor ecx, 0x4cf92a0e
mov rdx, qword [rdx]
movabs r8, 0x18d780fdb3bec2f0
movabs r9, 0x58d780fdb3bec2f0
xor r8, r9
and rdx, r8
cmp rdx, 0
sete dl
mov byte [rsp + 0x47], dl
cmp eax, ecx
je 0x1400b6b75
mov rcx, qword [rsp + 0x48]
mov dl, byte [rsp + 0x47]
mov rax, 0xffffffffffffffff
test dl, 1
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
jne 0x1400b6c74
jmp 0x1400b6d54
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax]
mov qword [rsp + 0x38], rcx
xor eax, eax
cmp rcx, 0
mov qword [rsp + 0x60], rax
je 0x1400b6d54
mov rcx, qword [rsp + 0x38]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
xor eax, eax
cmp rdx, 0
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
jne 0x1400b6d54
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rax
mov eax, dword [0x140277648]
xor eax, dword [0x14027764c]
mov edx, 0xffffffff
xor edx, 0x724eb966
mov ecx, eax
and ecx, edx
mov r8d, 0x23f5d652
xor r8d, 0x51bb6f34
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
sub eax, 0x5cb1609f
mov ecx, 0xa2760a20
xor ecx, 0xc84a87e1
xor eax, ecx
cmp eax, 0xba81b698
jb 0x1400b6d7c
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x140277650]
mov r8d, dword [0x140277654]
xor r8d, 0xe3c0fd9f
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov edx, 0x935f8734
xor edx, 0x16426a70
or eax, edx
mov edx, 0x4bb5c7fa
xor edx, 0x345cf1af
sub eax, edx
mov edx, eax
and edx, 0x485ed638
xor edx, 0xffffffff
add eax, 0x485ed638
add eax, 1
add eax, edx
mov dword [rsp + 0x24], eax
call fcn.14001d1d6
mov eax, dword [rsp + 0x24]
cmp eax, 0x64060e4b
jb 0x1400b6cd6
std
shl bl, 0x31
shr byte [rcx], cl
ret 0xc031
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x60], rax
jmp 0x1400b6d54
mov rax, qword [rsp + 0x60]
add rsp, 0xe8
ret
je 0x1400b6cec
sub dword [rbx - 0x63017], esi
invalid
in al, dx
add al, 0xd3
jmp 0x1400b6894
ja 0x1400b6d54
invalid
scasb al, byte [rdi]
pop rsp
clc
int1
jmp 0x1400b6cd6