Function at 0x140090db4
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, r12
mov qword [rsp + 8], r12
xchg rcx, r12
nop
sub rsp, 8
mov qword [rsp], rbp
push rbx
mov dword [rsp - 0x20], 0x3aa29bb5
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
mov dword [rsp - 0x40], 0x604d428
push r12
nop
sub rsp, 8
mov qword [rsp], r13
push rcx
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x138]
add rsp, 0x3b959e83
sub rsp, 0x3b95a0bb
xchg rdx, rsp
mov r8, rsp
xchg rdx, rsp
xchg r8, rdi
mov r8, rcx
xchg rdi, r8
xor edx, edx
xchg r8, r8
lea ebx, [rdx + 1]
mov ecx, edx
mov eax, 0x749a6ed5
sub eax, 0x7064741b
add eax, 0x151e7538
add eax, 0x41fddedf
rol eax, cl
lea rcx, [0x140001b10]
mov dword [rsp - 0x14], 0x2353ebf0
xor al, byte [rdx + rcx]
mov byte [rsp + rdx + 0x10], al
add rdx, rbx
cmp rdx, 0x211
mov dword [rsp - 0x24], 0x6b06a7ba
jb 0x140090e2c
xor dl, dl
lea r11, [rsp + 0x10]
mov dword [rsp - 0x20], 0x650bbb78
xor r12b, r12b
mov byte [rsp + 4], dl
xor eax, eax
mov dword [rsp], r12d
mov r11, r11
xchg r9, rdi
mov rdi, r9
xchg rdi, r9
mov r10b, 0x55
xor r10b, 0x21
add r10b, 1
xor r10b, 0x64
sub r10b, 1
xchg r8, r13
mov rdi, r13
xchg r13, r8
lea ecx, [rax + 0x25]
rep stosb byte [rdi], al
mov dword [rsp - 0x20], 0x55f9b63c
lea esi, [rax + 4]
movzx edi, byte [r9]
add r9, rbx
mov ecx, edi
mov dword [rsp - 0x3c], 0x649ce67c
cmp edi, 0x65
ja 0x140090f2e
sub ecx, 0x26
cmp ecx, 0x3f
xchg rsp, rsp
ja 0x140090fd0
movabs rax, 0xc000000061af219b
sub rax, 0x4f2c8d54
xor rax, 0x3bdd1945
sub rax, 0x285e8c01
bt rax, rcx
mov dword [rsp - 0x1c], 0x35ee6a56
jae 0x140090fd0
mov byte [r8 + 3], dil
mov al, 0x7e
sub al, 0x6f
xor al, 0x43
xor al, 0xc
jmp 0x140090fbc
sub ecx, 0x66
je 0x140090fae
xchg r11, r11
sub ecx, ebx
je 0x140090f98
sub ecx, 0x89
je 0x140090f85
mov r12, r12
sub ecx, 2
je 0x140090f71
cmp ecx, ebx
jne 0x140090fd0
xchg r14, r14
mov byte [r8 + 1], dil
mov al, sil
jmp 0x140090fbc
mov byte [r8 + 1], dil
mov rdx, rdx
mov al, 0x59
add al, 9
xor al, 0x17
sub al, 0x73
jmp 0x140090fbc
mov byte [r8 + 2], dil
mov al, 0x14
add al, 0x10
xor al, 4
add al, 0xe
xor al, 0xe
jmp 0x140090fbc
mov byte [r8 + 5], dil
mov r10, r10
mov al, 0x3b
xor al, 0x13
sub al, 0x21
add al, 0x16
xor al, 0xd
jmp 0x140090fbc
mov byte [r8 + 4], dil
mov al, 0x19
add al, 0x54
xor al, 0x25
add al, 0x2c
xor al, 0x7c
or dl, al
add r10b, 0xff
mov dword [rsp - 0x18], 0x62bbccc2
jne 0x140090ec6
movzx eax, dl
mov ecx, ebx
movzx r10d, dl
mov rdi, rdi
shl r10d, 0xb
shl r10d, 2
shl r10d, 1
shl r10d, 7
shl r10d, 1
shl r10d, 1
test dl, dl
mov dword [r8 + 0x21], r10d
cmovne ecx, eax
mov dword [rsp - 0x10], 0x7a14ee31
mov al, dil
and al, 0xf0
cmp al, 0x40
jne 0x1400910a1
mov r9, r9
bts r10d, 0x1e
mov al, dil
shr al, 3
mov r12, r12
and al, bl
mov dword [r8 + 0x21], r10d
mov byte [r8 + 7], al
xchg r14, r14
je 0x14009104c
mov al, byte [r9]
and al, 0xf8
movzx r12d, r12b
xchg rsi, rsi
cmp al, 0xb8
cmove r12d, ebx
mov dword [rsp], r12d
xchg rsi, rsi
mov al, dil
shr al, 1
shr al, 1
and al, bl
mov r8, r8
mov byte [r8 + 8], al
mov al, dil
shr al, 1
mov rdi, rdi
and dil, bl
and al, bl
mov byte [r8 + 0xa], dil
mov rsi, rsi
mov byte [r8 + 9], al
mov dil, byte [r9]
add r9, rbx
mov dword [rsp - 0x14], 0x69a20eb7
mov al, dil
and al, 0xf0
cmp al, 0x40
jne 0x1400910a1
xchg rbx, rbx
mov byte [rbp + 0x198], dil
mov sil, cl
jmp 0x140091147
mov byte [r8 + 0xb], dil
mov sil, cl
xchg rdi, rdi
cmp dil, 0xf
jne 0x1400910cd
mov dil, byte [r9]
mov dword [rsp - 0x28], esi
lea r11, [rsp + 0x5a]
mov byte [r8 + 0xc], dil
add r9, rbx
jmp 0x14009110c
cmp dil, 0xa0
mov rcx, rcx
jb 0x14009110c
cmp dil, 0xa3
ja 0x14009110c
add r12b, bl
mov dword [rsp - 0x28], 0x98dbd36
mov dword [rsp], r12d
test cl, 0x10
je 0x140091108
mov rbx, rbx
or sil, 8
jmp 0x14009110c
and sil, 0xf7
movzx edx, dil
mov eax, edx
mov dword [rsp - 0x18], esp
mov byte [rbp + 0x198], dil
shr rax, 1
shr rax, 1
and edx, 3
mov r11, r11
movzx eax, byte [rax + r11]
add rax, r11
mov r14b, byte [rdx + rax]
mov dword [rsp - 0x10], 0x198da28c
cmp r14b, 0xff
jne 0x140091180
or r10d, 0x3000
movzx eax, dil
xchg r13, r13
and eax, 0xfffffffd
mov dword [r8 + 0x21], r10d
xor r14b, r14b
cmp al, 0x24
mov dword [rsp - 0x10], 0x76e79f5b
jne 0x140091180
mov r14b, bl
mov r13b, dil
mov dword [rsp - 0x3c], ebx
xor bl, bl
jmp 0x1400911ac
xor bl, bl
mov r13b, dil
test r14b, r14b
mov dword [rsp - 0x38], ebx
jns 0x1400911ac
movzx eax, r14b
and eax, 0x7f
mov r13, r13
movzx r14d, word [rax + r11]
movzx ebx, r14w
shr bx, 7
shr bx, 1
mov r15b, byte [r8 + 0xc]
mov dword [rsp - 0x3c], 0x58533cb0
mov r11d, r10d
test r15b, r15b
je 0x140091205
mov dword [rsp - 0x34], edx
movzx edx, dil
mov eax, edx
and edx, 3
shr rax, 2
mov dword [rsp - 0xc], 0x106c661e
movzx ecx, byte [rbp + rax + 0x4c]
lea rax, [rbp + 0x4c]
add rax, rdx
xchg rcx, rcx
test byte [rax + rcx], sil
je 0x140091205
or r11d, 0x3000
mov dword [r8 + 0x21], r11d
mov dword [rsp - 0x24], esp
test r14b, 1
je 0x140091835
or r11d, 1
mov dword [rsp - 0x14], 0x3d840255
mov dword [r8 + 0x21], r11d
mov edi, r11d
mov r12b, byte [r9]
mov dl, r12b
mov dword [rsp - 0x30], edi
mov byte [r8 + 0xd], r12b
mov cl, r12b
shr dl, 4
shr dl, 2
and cl, 7
shr r12b, 1
shr r12b, 1
shr r12b, 1
and r12b, 7
mov byte [rbp + 0x190], dl
mov byte [r8 + 0xe], dl
mov rdi, rdi
mov byte [rbp + 0x188], cl
mov byte [r8 + 0x10], cl
mov byte [r8 + 0xf], r12b
mov r9, r9
test bl, bl
je 0x1400912a2
mov cl, r12b
mov dword [rsp - 0x44], 0x405623c7
movzx eax, bl
shl eax, cl
mov cl, byte [rbp + 0x188]
xchg r14, r14
test al, al
jns 0x1400912a2
or edi, 0x3000
mov dword [rsp - 0x18], 0x7944f374
mov dword [r8 + 0x21], edi
mov r10b, byte [rbp + 0x198]
mov eax, edi
test r15b, r15b
mov dword [rsp - 0x14], 0x4b3de2de
jne 0x14009133a
cmp r10b, 0xd9
jb 0x14009133a
cmp r10b, 0xdf
mov r8, r8
ja 0x14009133a
lea eax, [r10 + 0x27]
movzx r10d, al
cmp dl, 3
xchg r11, r11
jne 0x140091304
movzx eax, r12b
lea rdx, [rbp + 0x14]
add rdx, rax
xchg rdx, rdx
mov r10b, byte [rdx + r10*8]
mov dl, byte [rbp + 0x190]
jmp 0x14009130c
mov r10b, byte [rbp + r10 + 0xd]
mov cl, r12b
shl r10b, cl
mov dword [rsp - 0x3c], 0x3d36d999
mov eax, edi
test r10b, r10b
mov r10b, byte [rbp + 0x198]
jns 0x14009133a
mov dword [rsp - 0x34], 0x8712585
or eax, 0x3000
mov dword [r8 + 0x21], eax
test sil, 0x20
mov dword [rsp - 0x10], esi
je 0x1400913f5
cmp dl, 3
jne 0x140091362
or eax, 0x9000
xchg rsp, rsp
mov dword [r8 + 0x21], eax
jmp 0x1400913f5
mov dl, r10b
xchg rdi, rdi
test r15b, r15b
jne 0x140091378
and dl, 0xfe
mov dword [rsp - 0x1c], ecx
test r15b, r15b
lea rax, [rbp + 0xe8]
lea rdi, [rbp + 0xd6]
cmovne rdi, rax
xchg rbx, rbx
lea rcx, [rbp + 0xbe]
lea rax, [rbp + 0xd6]
cmovne rcx, rax
mov rdi, rdi
jmp 0x1400913c4
cmp byte [rcx], dl
xchg rbx, rbx
je 0x1400913d6
nop
sub rcx, 0x5a506d18
add rcx, 0x5a506d1a
cmp rcx, rdi
mov dword [rsp - 0x38], ebx
jne 0x1400913aa
jmp 0x1400913ed
movzx eax, byte [rcx + 1]
mov r8, r8
mov cl, r12b
shl eax, cl
test al, al
mov rsi, rsi
jns 0x1400913f5
or dword [r8 + 0x21], 0x9000
movzx ecx, r13b
mov r8, r8
mov bl, 0x54
sub bl, 0x4d
xor bl, 0x22
xor bl, 0x20
mov edx, ecx
mov rbp, rbp
test r15b, r15b
je 0x1400914bc
sub edx, 0x20
je 0x14009146c
mov dword [rsp - 0x3c], 0x50f98c26
sub edx, 1
je 0x140091447
sub edx, 1
mov rsp, rsp
je 0x14009146c
cmp edx, 1
jne 0x1400914d4
mov rbx, rbx
lea eax, [r12 - 4]
mov r11b, 0x53
sub r11b, 0x10
xor r11b, 0x5e
add r11b, 0x42
xor r11b, 0x5c
cmp al, 1
ja 0x140091618
jmp 0x14009160d
mov ecx, 0x1fb017c2
xor ecx, 0x6d07bfc
add ecx, 0x3c3ae7b
add ecx, 0x255292aa
xor ecx, 0x4276ad67
mov r11b, 0x12
xor r11b, 0x7d
sub r11b, 0x2a
xor r11b, 0x67
sub r11b, 0x1f
cmp r12b, cl
ja 0x14009160d
cmp r12b, 1
mov dword [rsp - 0x1c], 0x721947ac
jne 0x140091618
jmp 0x14009160d
sub edx, 0x8c
mov rsi, rsi
je 0x1400915fa
cmp edx, 2
je 0x1400915e1
mov r11b, byte [rbp + 0x190]
xchg r8, r8
cmp r11b, 3
jne 0x14009157a
test r15b, r15b
mov rbx, rbx
je 0x14009151a
lea rdx, [rbp + 0x121]
lea rax, [rbp + 0xf7]
lea rcx, [rbp + 0xf7]
mov rcx, rcx
cmp rax, rdx
je 0x140091618
jmp 0x14009152b
lea rdx, [rbp + 0xf7]
lea rcx, [rbp + 0xe8]
xchg rsp, rsp
cmp byte [rcx], r10b
je 0x140091554
nop
sub rcx, 0x67eea010
add rcx, 0x67eea013
cmp rcx, rdx
jne 0x14009152b
mov r11, r11
jmp 0x140091618
test byte [rcx + 1], sil
je 0x140091618
mov rsi, rsi
movzx eax, byte [rcx + 2]
mov cl, r12b
shl eax, cl
test al, al
mov r9, r9
jns 0x14009160d
jmp 0x140091618
test r15b, r15b
mov dword [rsp - 0x2c], 0x699c197c
je 0x140091618
sub ecx, 0x50
je 0x1400915c6
sub ecx, 0x75
xchg rdx, rdx
je 0x14009160d
sub ecx, 0x11
je 0x1400915d5
mov dword [rsp - 0x24], 0x47de94aa
sub ecx, 1
je 0x1400915c6
cmp ecx, 0x20
jne 0x140091618
mov rbx, rbx
test sil, 9
jne 0x14009160d
jmp 0x140091618
test sil, 6
xchg r9, r9
jmp 0x1400915ca
mov r11b, byte [rbp + 0x190]
cmp r12b, 1
je 0x14009160d
mov rsp, rsp
jmp 0x140091604
mov r11b, byte [rbp + 0x190]
xchg rsi, rsi
cmp r12b, bl
jbe 0x140091618
or dword [r8 + 0x21], 0x11000
xchg rsp, rsp
mov dl, byte [r9 + 1]
sub r9, 0xfffffffffffffffe
cmp r12b, 1
mov rdi, rdi
ja 0x140091659
cmp r10b, 0xf6
jne 0x140091648
or r14b, 2
mov dword [rsp - 0x38], 0x5c5cd1be
jmp 0x140091659
cmp r10b, 0xf7
jne 0x140091659
mov r9, r9
or r14b, 0x10
mov al, byte [rbp + 0x188]
movzx ecx, r11b
xchg r10, r10
test r11b, r11b
je 0x1400916f2
sub ecx, 1
mov rbx, rbx
je 0x1400916c7
cmp ecx, 1
pushf
mov ecx, 0x5faf18e8
add ecx, 0x1d63dcb5
sub ecx, 0xfc5101a
sub ecx, 0x6d4de57f
popf
jne 0x140091745
mov dil, 0x5a
sub dil, 0x4c
add dil, 0x17
add dil, 1
sub dil, 0x24
test sil, 0x10
jne 0x140091749
mov dil, cl
mov r9, r9
jmp 0x140091749
mov dil, 0x21
xor dil, 0x48
add dil, 3
xor dil, 0x6d
mov ecx, 0x32e71499
xor ecx, 0x3e462841
add ecx, 0x3e1de376
xor ecx, 0x4abf204a
jmp 0x140091749
mov ecx, 0x35bc31f9
add ecx, 0x7fadaca
add ecx, 0x2fec11ca
xor ecx, 0x6da31e89
test sil, 0x10
mov rsi, rsi
je 0x14009172c
cmp al, 6
setne dil
dec dil
mov dword [rsp - 0x28], ecx
and dil, 2
jmp 0x140091749
mov edi, dword [rsp + 4]
mov rdx, rdx
cmp al, bl
movzx edi, dil
cmove edi, ecx
mov dword [rsp - 0x38], ebp
jmp 0x140091749
mov edi, dword [rsp + 4]
cmp r11b, 3
mov dword [rsp - 0x10], 0x419c5af
je 0x1400917b4
cmp al, cl
jne 0x1400917b4
or dword [r8 + 0x21], 2
mov rbx, rbx
mov al, dl
shr al, 6
inc r9
mov dword [rsp - 0x20], ebx
mov byte [r8 + 0x12], al
mov al, dl
shr al, 2
shr al, 1
and al, 7
mov byte [r8 + 0x11], dl
mov r12, r12
and dl, 7
mov byte [r8 + 0x13], al
mov byte [r8 + 0x14], dl
mov rbp, rbp
cmp dl, bl
jne 0x1400917b4
test r11b, 1
mov dword [rsp - 0x44], 0x6a732914
movzx edi, dil
cmove edi, ecx
dec r9
movzx ecx, dil
xchg rbp, rbp
sub ecx, 1
je 0x14009180e
sub ecx, 1
je 0x1400917f7
mov dword [rsp - 0x3c], esp
cmp ecx, 2
jne 0x140091822
bts dword [r8 + 0x21], 8
mov eax, dword [r9]
mov dword [rsp - 0x34], 0x68e4be5f
mov dword [r8 + 0x1d], eax
jmp 0x140091822
bts dword [r8 + 0x21], 7
movzx eax, word [r9]
xchg r9, r9
mov word [r8 + 0x1d], ax
jmp 0x140091822
or dword [r8 + 0x21], 0x40
mov al, byte [r9]
mov dword [rsp - 0x30], 0x11a226ee
mov byte [r8 + 0x1d], al
mov r12d, dword [rsp]
movzx eax, dil
add r9, rax
xchg r14, r14
jmp 0x140091850
test sil, 0x20
mov r12, r12
je 0x140091850
or r11d, 0x9000
mov dword [r8 + 0x21], r11d
mov rbp, rbp
test r14b, 0x10
je 0x1400918e2
test r14b, 0x40
mov dword [rsp - 0x14], 0x4371fdea
je 0x1400918b2
test sil, 8
je 0x140091896
mov r10, r10
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
sub r9, 0xfffffffffffffffe
xchg r12, r12
mov word [r8 + 0x15], ax
jmp 0x1400919e1
mov ecx, 0x78cdfa4e
sub ecx, 0x28df595d
sub ecx, 0x1ad1c173
xor ecx, 0x351cdf7a
jmp 0x140091958
test r12b, r12b
je 0x140091972
mov dword [rsp - 0x40], edi
or dword [r8 + 0x21], 0x20
xchg r13, rax
mov r13, qword [r9]
xchg r13, rax
nop
sub r9, 0x3c4e101
add r9, 0x3c4e109
xchg rdx, rax
mov qword [r8 + 0x15], rdx
xchg rdx, rax
mov ecx, 0x5a2adca4
sub ecx, 0x3f05074
add ecx, 0x1491a408
xor ecx, 0x6acc303c
test cl, r14b
mov dword [rsp - 0x14], ebp
je 0x140091926
or dword [r8 + 0x21], 8
movzx eax, word [r9]
mov rsi, rsi
nop
sub r9, 0x7564cbf0
add r9, 0x7564cbf2
mov word [r8 + 0x15], ax
test r14b, 2
mov dword [rsp - 0x10], ebp
je 0x14009194a
or dword [r8 + 0x21], ecx
mov al, byte [r9]
mov dword [rsp - 0x2c], 0x2bae3bd1
inc r9
mov byte [r8 + 0x15], al
test r14b, 0x40
mov dword [rsp - 0x14], edi
je 0x1400919b5
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
add r9, rcx
mov rsp, rsp
mov dword [r8 + 0x15], eax
jmp 0x1400919e1
mov ecx, 0x56d38074
add ecx, 0x22be76c4
xor ecx, 0x2c951cfd
sub ecx, 0x39617473
sub ecx, 0x1ba3774e
test sil, 8
jne 0x140091906
mov dword [rsp - 0x18], esi
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, rcx
mov dword [rsp - 0x2c], esi
mov dword [r8 + 0x15], eax
jmp 0x1400918f9
test r14b, 0x20
je 0x1400919e1
or dword [r8 + 0x21], 0x204
mov dword [rsp - 0x20], 0x6b5e026
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
mov dword [rsp - 0x18], 0x5b369064
sub r9b, byte [rbp + 0x180]
mov byte [r8], r9b
cmp r9b, 0xf
mov dword [rsp - 0x28], esp
jbe 0x140091a20
or dword [r8 + 0x21], 0x5000
mov r9b, 0x11
add r9b, 0x1f
xor r9b, 0x43
sub r9b, 0x64
mov byte [r8], 0x7d
xor byte [r8], 0x2a
sub byte [r8], 0x15
sub byte [r8], 0x33
xor eax, eax
lea rdi, [rsp + 0x10]
xchg rsi, rsi
mov ecx, 0x21a389ef
xor ecx, 0x62020d87
sub ecx, 0x33a52b53
sub ecx, 0xffc5704
rep stosb byte [rdi], al
movzx eax, r9b
sub rsp, 0x69b43db8
add rsp, 0x69b43ff0
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rdi
pop rsi
mov dword [rsp - 0xc], esi
nop
mov rbx, qword [rsp]
add rsp, 8
pop rbp
mov r11, r11
ret