Function at 0x140007cf0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rbx
sub rsp, 0xe8
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], rcx
call fcn.140007b4b
mov r9, qword [rsp + 0xd0]
mov qword [rsp + 0xd8], rax
movabs rcx, 0x7573a465c82e1c30
movabs rax, 0x7573a465c82e1c32
xor rcx, rax
mov r8, r9
sar r8, cl
mov rdx, r8
add rdx, r9
mov qword [rsp + 0xe0], rdx
mov rax, rdx
xor rax, 0xffffffffffffffff
movabs rcx, 0x1c272f7c3367c870
and rax, rcx
movabs r11, 0x6917684959cdd94d
movabs rcx, 0x753047356aaa113d
xor r11, rcx
movabs rcx, 0x9c155024e9a55b2c
movabs r10, 0x63eaafdb165aa4d3
xor rcx, r10
xor r11, rcx
mov r10, rdx
and r10, r11
movabs rsi, 0x3b6f30e025e8af1b
movabs rcx, 0xc490cf1fda1750e4
xor rsi, rcx
mov rcx, r9
xor rcx, rsi
movabs rsi, 0x1c272f7c3367c870
and rcx, rsi
and r9, r11
or rax, r10
or rcx, r9
xor rax, rcx
mov rcx, rdx
or rcx, rcx
movabs r9, 0x30133e0e09191d1c
movabs r10, 0xcfecc1f1f6e6e2e3
xor r9, r10
xor rcx, r9
movabs r10, 0x3714191531befe9a
movabs r9, 0xc8ebe6eace410165
xor r10, r9
mov r9, r8
xor r9, r10
mov r10, r8
xor r10, 0xffffffffffffffff
and r9, r10
or rcx, r9
xor rcx, 0xffffffffffffffff
or rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0x10ca097e444e1595
movabs r8, 0xef35f681bbb1ea6a
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140007e6b
call fcn.140008d37
jmp 0x140008732
mov rax, qword [rsp + 0xe0]
movabs rcx, 0x4aaf64d9e272ba22
movabs rdx, 0x4aaf64d9e272ba22
xor rcx, rdx
cmp rax, rcx
jge 0x140007eb3
mov rcx, qword [rsp + 0xe0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000db87
jmp 0x140008732
mov eax, dword [0x140241580]
mov ecx, dword [0x140241584]
mov edx, 0x8a865288
xor edx, 0x70161460
xor ecx, edx
add eax, ecx
add eax, 0xa94083b3
mov ecx, 0xd096a827
xor edx, edx
div ecx
mov ecx, 0x30271a77
xor edx, edx
div ecx
cmp eax, 0x9a8db0c3
jae 0x140008744
mov rcx, qword [rsp + 0xc0]
mov edx, dword [0x140241588]
mov eax, dword [0x14024158c]
xor eax, 0xd5c7eafc
or edx, eax
mov eax, edx
and eax, 0x639dd994
or edx, 0x639dd994
add eax, edx
mov r8d, 0xa54c06c
xor edx, edx
div r8d
mov rdx, qword [rsp + 0xe0]
mov r8d, 0xe4501e17
xor r8d, 0x30ef784e
add eax, r8d
add eax, 0xca33e37c
sub eax, 0xd4bf6659
mov dword [rsp + 0xac], eax
call fcn.140019920
mov eax, dword [rsp + 0xac]
cmp eax, 0xee108443
je 0x140007ef0
xor eax, eax
mov qword [rsp + 0xa0], rax
jmp 0x140007f74
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x90], rcx
mov ax, word [rax + rcx*2]
mov word [rsp + 0x9e], ax
mov cx, 0x587
xor cx, 0x587
cmp ax, cx
je 0x140008732
mov r11d, dword [0x140241590]
mov r10d, dword [0x140241594]
xor r10d, 0x258f4f97
mov ecx, r11d
xor ecx, 0xffffffff
mov eax, 0x740ca5d4
xor eax, 0x8bf35a2b
mov edx, r10d
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0x3ed20da7
mov eax, ecx
and eax, 0x3ed20da7
and r11d, r8d
mov esi, 0x3aeab0c2
xor esi, 0x438bd65
mov r9d, edx
and r9d, esi
and r10d, r8d
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
mov edx, 0x61ea46c0
xor edx, 0x9e15b93f
xor ecx, edx
mov edx, 0xc5f343f8
xor edx, 0xfb214e5f
or edx, r8d
and ecx, edx
or eax, ecx
or eax, 0xcfe0f691
mov ecx, 0xffffffff
xor ecx, 0xf7ff8b28
add eax, ecx
add eax, 1
mov ecx, 0x520563a
xor edx, edx
div ecx
mov ecx, 0xf8d5976f
xor ecx, 0x3dda8cd4
cmp eax, ecx
jae 0x14000874d
mov rdx, qword [rsp + 0xd8]
mov r8w, word [rsp + 0x9e]
mov eax, dword [0x140241598]
sub eax, dword [0x14024159c]
mov ecx, eax
xor ecx, 0x9379fa18
xor ecx, 0xffffffff
or eax, 0x9379fa18
and eax, ecx
mov ecx, eax
and ecx, 0xa8f3fd4d
shl ecx, 1
xor eax, 0xa8f3fd4d
add eax, ecx
imul eax, eax, 0xe21b45db
mov ecx, 0x55a6f884
xor ecx, 0xa87b93d9
movzx r8d, r8w
mov qword [rsp + 0x80], r8
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x8f], dl
cmp eax, ecx
jae 0x14000805a
mov al, byte [rsp + 0x8f]
test al, 1
jne 0x1400080e1
jmp 0x140008732
mov rcx, qword [rsp + 0x90]
movabs rdx, 0xa4a92f4e05764f03
movabs rax, 0xa4a92f4e05764f03
xor rdx, rax
movabs rax, 0x37bae4e7bc074f
movabs r8, 0x37bae4e7bc074e
xor rax, r8
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rsp + 0x78], rax
movabs rdx, 0x451c58490744818
movabs r8, 0xfbae3a7b6f8bb7e7
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x6baf1c4865e7bae8
movabs r8, 0x9450e3b79a184517
xor rdx, r8
xor rax, rdx
movabs rdx, 0xa34ab223910970e9
movabs r8, 0x5cb54ddc6ef68f16
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x85e0f75af234cb6
xor rdx, r8
or rax, rcx
movabs rcx, 0x8a15b0cd4ff65ca3
movabs r8, 0x824bbfb8e0d51015
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x1400081bf
call fcn.140008d37
jmp 0x140008732
mov cx, word [rsp + 0x9e]
mov dx, 0xffff
xor dx, 0xfc00
mov ax, cx
xor ax, dx
and ax, cx
mov word [rsp + 0x76], ax
cmp ax, 0xd800
jne 0x140008354
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x78]
mov cx, word [rcx + rdx*2]
mov word [rsp + 0x66], cx
and cx, 0xfc00
cmp cx, 0xdc00
mov qword [rsp + 0x68], rax
jne 0x140008377
mov rdx, qword [rsp + 0x90]
mov cx, word [rsp + 0x66]
mov rax, qword [rsp + 0x80]
shl rax, 0xa
mov r8, rax
xor r8, 0xffc00
xor r8, 0xffffffffffffffff
movabs r9, 0xbd4645dc783186b1
movabs r10, 0xbd4645dc783e7ab1
xor r9, r10
or rax, r9
and rax, r8
and cx, 0x3ff
movzx ecx, cx
or rax, rcx
add rax, 0x10000
xor ecx, ecx
mov r8d, ecx
sub r8, rdx
xor ecx, ecx
sub rcx, 2
add r8, rcx
xor ecx, ecx
sub rcx, r8
mov r8, 0xfffffffffffffffe
movabs r9, 0xb5d7bfe335748339
sub r8, r9
sub r8, rdx
movabs rdx, 0xb5d7bfe335748339
add r8, rdx
movabs r9, 0x791d3c85265d90fd
movabs rdx, 0x86e2c37ad9a26f02
xor r9, rdx
mov rdx, rcx
xor rdx, r9
xor r8, 0xffffffffffffffff
movabs r9, 0xb78f91cc484d734d
movabs r10, 0xe74c7c9fba4859aa
xor r9, r10
movabs r10, 0x140b05e256af9086
movabs r11, 0xebf4fa1da9506f79
xor r10, r11
xor r9, r10
or rdx, r8
movabs r8, 0xf31a1c51ee556f24
movabs r10, 0xa3d9f1021c5045c3
xor r8, r10
or r8, r9
xor rdx, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x8967cf649b40284a
movabs r9, 0x8967cf649b40284a
xor r8, r9
cmp rdx, r8
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
jge 0x1400085a4
call fcn.140008d37
jmp 0x140008732
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x80]
mov dx, word [rsp + 0x76]
cmp dx, 0xdc00
cmove rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x48], rax
movabs rcx, 0x2d82f550e1daa18c
movabs rdx, 0x2d82f550e1daa10c
xor rcx, rdx
cmp rax, rcx
jge 0x1400083e1
mov rax, qword [rsp + 0x48]
cmp rax, 0
jge 0x1400083c9
mov rcx, qword [rsp + 0x48]
xor eax, eax
mov edx, eax
mov r8d, 0xff
call fcn.14000db87
jmp 0x140008732
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x48]
mov byte [rsp + 0x3f], cl
mov qword [rsp + 0x40], rax
jmp 0x140008705
mov rax, qword [rsp + 0x48]
cmp rax, 0x800
jae 0x14000844f
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xc0]
shr rax, 6
mov dl, al
or dl, 0xc0
call fcn.140008760
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x78]
mov dl, cl
mov cl, dl
and cl, 0x3f
xor cl, 0xff
mov r8b, 0xef
xor r8b, 0x10
xor dl, r8b
mov r8b, 0xff
xor r8b, 0x3f
or dl, r8b
and cl, dl
xor cl, 0xff
mov dl, 0xbf
xor dl, 0x3f
or cl, dl
mov byte [rsp + 0x3f], cl
mov qword [rsp + 0x40], rax
jmp 0x140008705
mov rax, qword [rsp + 0x48]
movabs rcx, 0x17903b3118c1e398
movabs rdx, 0x17903b3118c0e398
xor rcx, rdx
cmp rax, rcx
jae 0x140008584
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xc0]
shr rax, 0xc
mov bl, al
mov al, bl
xor al, 0xff
mov r9b, 0xff
xor r9b, 0xe0
mov r8b, 0xff
xor r8b, 0x49
mov dl, al
and dl, 0x49
and bl, r8b
mov r11b, 0x87
xor r11b, 0xce
mov r10b, r9b
and r10b, r11b
mov r11b, r8b
and r11b, 0xe0
or dl, bl
or r10b, r11b
xor dl, r10b
or al, r9b
mov r9b, 0x33
xor r9b, 0xcc
xor al, r9b
or r8b, 0x49
and al, r8b
or dl, al
call fcn.140008760
mov rax, qword [rsp + 0x48]
movabs rcx, 0x4559f8a177b7d1c2
movabs rdx, 0x4559f8a177b7d1c4
xor rcx, rdx
shr rax, cl
mov rcx, qword [rsp + 0xc0]
mov dl, al
and dl, 0x3f
or dl, 0x80
call fcn.140008760
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x78]
mov dl, cl
xor dl, 0xff
mov r8b, 0x28
xor r8b, 0x17
mov cl, 0xd
xor cl, 0xf2
xor r8b, cl
mov cl, 9
xor cl, 0x98
mov r9b, 0x84
xor r9b, 0x7b
xor cl, r9b
or dl, r8b
or cl, 0x91
mov r8b, 0xbf
xor r8b, 0x40
xor dl, r8b
and dl, cl
mov cl, dl
or cl, 0x80
xor cl, 0xff
or dl, 0x80
mov r8b, 0x8e
xor r8b, 0x71
xor dl, r8b
mov r8b, 0x6d
xor r8b, 0x92
xor cl, r8b
mov r8b, 0x95
xor r8b, 0x6a
xor dl, r8b
and cl, dl
mov byte [rsp + 0x3f], cl
mov qword [rsp + 0x40], rax
jmp 0x140008705
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x78]
cmp rax, 0x110000
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
jae 0x1400086d1
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
movabs rcx, 0xdf11ad36ecd83dcf
movabs rdx, 0xdf11ad36ecd83ddd
xor rcx, rdx
shr rax, cl
mov rcx, qword [rsp + 0xc0]
mov dl, al
xor dl, 0xff
xor al, 0xff
or dl, al
mov al, 0xb
xor al, 0xfb
mov r8b, 0x43
xor r8b, 0xbc
xor al, r8b
mov r8b, 0xff
xor r8b, 0xf0
or al, r8b
xor dl, 0xff
mov r8b, 0xb8
xor r8b, 0x47
xor al, r8b
or dl, al
call fcn.140008760
mov rax, qword [rsp + 0x28]
movabs rcx, 0x9804c5ec8ef72b30
movabs rdx, 0x9804c5ec8ef72b3c
xor rcx, rdx
shr rax, cl
mov rcx, qword [rsp + 0xc0]
mov dl, al
mov r8b, 0xff
xor r8b, 0x3f
mov al, dl
xor al, r8b
and al, dl
mov dl, al
or dl, 0x80
mov r8b, 0xa0
xor r8b, 0x5f
xor dl, r8b
xor al, 0xff
mov r8b, 0xff
xor r8b, 0x80
and al, r8b
or dl, al
xor dl, 0xff
call fcn.140008760
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x28]
shr rax, 6
mov dl, al
mov al, 0xf4
xor al, 0xcb
and dl, al
or dl, 0x80
call fcn.140008760
mov rcx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov dl, cl
mov cl, dl
xor cl, 0xff
xor dl, 0xff
and cl, dl
mov dl, 0xff
xor dl, 0x3f
mov r8b, 0xef
xor r8b, 0xd0
mov r9b, 1
xor r9b, 0xfe
xor r8b, r9b
and dl, r8b
or cl, dl
xor cl, 0xff
or cl, 0x80
mov byte [rsp + 0x3f], cl
mov qword [rsp + 0x40], rax
jmp 0x140008705
mov rcx, qword [rsp + 0xc0]
mov dl, 0xda
xor dl, 0x35
call fcn.140008760
mov rcx, qword [rsp + 0xc0]
mov dl, 0x7f
xor dl, 0xc0
call fcn.140008760
mov rax, qword [rsp + 0x78]
mov cl, 0xbd
mov byte [rsp + 0x3f], cl
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0xc0]
mov dl, byte [rsp + 0x3f]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.140008760
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0xa0], rax
jmp 0x140007f74
mov rax, qword [rsp + 0xc8]
add rsp, 0xe8
pop rbx
pop rsi
ret
add dword [rcx - 0x62], esi
jo 0x140008732
movabs dword [0xe94a53e442fffff7], eax
add al, 0xf9
invalid
in al, 0x53
jmp 0x14000805a