Function at 0x140090744
Capabilities:
Encode data using xor

Disassembly:
xchg r14, rcx
mov qword [rsp + 8], r14
xchg rcx, r14
nop
push 0x309bd1ab
mov qword [rsp], rbp
push rbx
mov rcx, rcx
nop
sub rsp, 8
mov qword [rsp], rsi
nop
sub rsp, 8
mov qword [rsp], rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r10
mov qword [rsp], r15
lea rbp, [rsp - 0x138]
xchg r13, r13
add rsp, 0x2d486566
sub rsp, 0x2d48679e
xchg r8, rdx
mov rdx, r8
xchg rdx, r8
xchg rsi, rdi
mov rsi, rcx
xchg rdi, rsi
xor edx, edx
lea ebx, [rdx + 1]
mov dword [rsp - 0x44], 0x2dc45604
mov ecx, edx
mov eax, 0x64e80661
add eax, 0x58242fe
sub eax, 0x569ed485
add eax, 0x6a160600
rol eax, cl
lea rcx, [0x14000bc10]
xchg r15, r15
xor al, byte [rdx + rcx]
mov byte [rsp + rdx + 0x10], al
add rdx, rbx
cmp rdx, 0x211
mov dword [rsp - 0x1c], ebp
jb 0x1400907c3
xor dl, dl
lea r11, [rsp + 0x10]
mov dword [rsp - 0x24], edx
xor r12b, r12b
mov byte [rsp + 4], dl
xor eax, eax
xchg rcx, rcx
mov dword [rsp], r12d
xchg rdi, r9
mov rdi, r9
xchg r9, rdi
mov r10b, 0x7a
sub r10b, 0x13
xor r10b, 0x26
xor r10b, 0x51
mov rdi, r8
lea ecx, [rax + 0x25]
rep stosb byte [rdi], al
mov r11, r11
lea esi, [rax + 4]
movzx edi, byte [r9]
add r9, rbx
mov dword [rsp - 0x10], 0x1ef09403
mov ecx, edi
cmp edi, 0x65
ja 0x1400908ad
neg ecx
add ecx, 0x26
neg ecx
cmp ecx, 0x3f
mov dword [rsp - 0x20], 0x3a0bf493
ja 0x14009095f
movabs rax, 0xc0000000410caa24
xor rax, 0x3681da2c
sub rax, 0x5e8380fb
xor rax, 0x1808ee0c
bt rax, rcx
xchg r15, r15
jae 0x14009095f
mov byte [r8 + 3], dil
mov al, 0x1b
add al, 0x5b
sub al, 0x1b
sub al, 0x1b
jmp 0x140090950
sub ecx, 0x66
je 0x140090940
mov dword [rsp - 0x40], 0x3033c21d
sub ecx, ebx
je 0x140090925
sub ecx, 0x89
mov r8, r8
je 0x140090914
sub ecx, 2
je 0x1400908f9
xchg rbp, rbp
cmp ecx, ebx
jne 0x14009095f
mov byte [r8 + 1], dil
mov al, sil
mov dword [rsp - 0x28], ecx
jmp 0x140090950
mov byte [r8 + 1], dil
mov dword [rsp - 0x34], 0xe5c02dc
mov al, 0x60
sub al, 1
xor al, 0x5c
add al, 3
xor al, 4
jmp 0x140090950
mov byte [r8 + 2], dil
mov al, 0x44
sub al, 0x42
xor al, 0x55
xor al, 0x77
jmp 0x140090950
mov byte [r8 + 5], dil
mov dword [rsp - 0x3c], 0x60b1d3a9
mov al, 0
add al, 0x71
sub al, 0x27
sub al, 0x46
add al, 0xc
jmp 0x140090950
mov byte [r8 + 4], dil
mov dword [rsp - 0x28], edi
mov al, 0x6d
xor al, 0xc
sub al, 0xe
sub al, 0x4b
or dl, al
add r10b, 0xff
xchg rcx, rcx
jne 0x140090841
movzx eax, dl
mov ecx, ebx
movzx r10d, dl
mov dword [rsp - 0x20], ecx
shl r10d, 0x14
shl r10d, 1
shl r10d, 1
shl r10d, 1
test dl, dl
mov dword [r8 + 0x21], r10d
mov dword [rsp - 0x14], ebp
cmovne ecx, eax
mov al, dil
and al, 0xf0
mov dword [rsp - 0x34], edi
cmp al, 0x40
jne 0x140090a28
bts r10d, 0x1e
mov al, dil
mov rbp, rbp
shr al, 3
and al, bl
mov dword [r8 + 0x21], r10d
mov dword [rsp - 0x38], edx
mov byte [r8 + 7], al
je 0x1400909d7
mov al, byte [r9]
and al, 0xf8
mov dword [rsp - 0x20], 0x5e51f468
movzx r12d, r12b
cmp al, 0xb8
cmove r12d, ebx
xchg r10, r10
mov dword [rsp], r12d
mov al, dil
shr al, 2
mov rcx, rcx
and al, bl
mov byte [r8 + 8], al
mov al, dil
xchg r13, r13
shr al, 1
and dil, bl
and al, bl
mov dword [rsp - 0x10], edi
mov byte [r8 + 0xa], dil
mov byte [r8 + 9], al
mov dil, byte [r9]
add r9, rbx
mov r12, r12
mov al, dil
and al, 0xf0
cmp al, 0x40
jne 0x140090a28
mov dword [rsp - 0x28], esp
mov byte [rbp + 0x198], dil
mov sil, cl
jmp 0x140090ad4
mov byte [r8 + 0xb], dil
mov sil, cl
mov dword [rsp - 0x2c], 0x26fbea35
cmp dil, 0xf
jne 0x140090a60
mov dil, byte [r9]
mov rdi, rdi
lea r11, [rsp + 0x5a]
mov byte [r8 + 0xc], dil
add r9, rbx
mov dword [rsp - 0xc], 0x31c3ba30
jmp 0x140090a9b
cmp dil, 0xa0
jb 0x140090a9b
xchg r14, r14
cmp dil, 0xa3
ja 0x140090a9b
add r12b, bl
mov dword [rsp], r12d
mov dword [rsp - 0x20], edx
test cl, 0x10
je 0x140090a97
or sil, 8
mov r10, r10
jmp 0x140090a9b
and sil, 0xf7
movzx edx, dil
mov eax, edx
mov dword [rsp - 0x3c], 0x6483b470
mov byte [rbp + 0x198], dil
shr rax, 2
and edx, 3
mov dword [rsp - 0x24], edx
movzx eax, byte [rax + r11]
add rax, r11
mov r14b, byte [rdx + rax]
xchg rdx, rdx
cmp r14b, 0xff
jne 0x140090b08
or r10d, 0x3000
mov dword [rsp - 0x40], ecx
movzx eax, dil
and eax, 0xfffffffd
mov dword [r8 + 0x21], r10d
xor r14b, r14b
xchg rdi, rdi
cmp al, 0x24
jne 0x140090b08
mov r14b, bl
xchg r9, r9
mov r13b, dil
xor bl, bl
jmp 0x140090b44
xor bl, bl
mov r13b, dil
test r14b, r14b
mov dword [rsp - 0x10], 0x29caa836
jns 0x140090b44
movzx eax, r14b
and eax, 0x7f
mov dword [rsp - 0x2c], 0x59a05c95
movzx r14d, word [rax + r11]
movzx ebx, r14w
shr bx, 3
shr bx, 3
shr bx, 1
shr bx, 1
mov r15b, byte [r8 + 0xc]
xchg r10, r10
mov r11d, r10d
test r15b, r15b
je 0x140090b97
movzx edx, dil
mov dword [rsp - 0x10], esp
mov eax, edx
and edx, 3
shr rax, 1
shr rax, 1
movzx ecx, byte [rbp + rax + 0x4c]
mov dword [rsp - 0x10], 0x5bc09dac
lea rax, [rbp + 0x4c]
add rax, rdx
test byte [rax + rcx], sil
je 0x140090b97
mov dword [rsp - 0x28], ecx
or r11d, 0x3000
mov dword [r8 + 0x21], r11d
test r14b, 1
je 0x1400911d5
xchg r9, r9
or r11d, 1
mov dword [r8 + 0x21], r11d
mov edi, r11d
mov r12b, byte [r9]
mov dword [rsp - 0x14], 0x67534e8c
mov dl, r12b
mov byte [r8 + 0xd], r12b
mov cl, r12b
shr dl, 5
shr dl, 1
and cl, 7
shr r12b, 3
mov r12, r12
and r12b, 7
mov byte [rbp + 0x190], dl
mov byte [r8 + 0xe], dl
mov dword [rsp - 0x44], esp
mov byte [rbp + 0x188], cl
mov byte [r8 + 0x10], cl
mov byte [r8 + 0xf], r12b
mov rdi, rdi
test bl, bl
je 0x140090c2d
mov cl, r12b
movzx eax, bl
mov dword [rsp - 0x1c], ebx
shl eax, cl
mov cl, byte [rbp + 0x188]
test al, al
mov dword [rsp - 0x1c], 0x769c4817
jns 0x140090c2d
or edi, 0x3000
mov dword [r8 + 0x21], edi
xchg rsp, rsp
mov r10b, byte [rbp + 0x198]
mov eax, edi
test r15b, r15b
xchg rcx, rcx
jne 0x140090cc5
cmp r10b, 0xd9
jb 0x140090cc5
cmp r10b, 0xdf
xchg r12, r12
ja 0x140090cc5
lea eax, [r10 + 0x27]
movzx r10d, al
cmp dl, 3
mov dword [rsp - 0xc], 0x2472c09a
jne 0x140090c94
movzx eax, r12b
lea rdx, [rbp + 0x14]
mov dword [rsp - 0x10], 0x1d795a18
add rdx, rax
mov r10b, byte [rdx + r10*8]
mov dl, byte [rbp + 0x190]
jmp 0x140090c9f
mov r10b, byte [rbp + r10 + 0xd]
mov cl, r12b
xchg r8, r8
shl r10b, cl
mov eax, edi
test r10b, r10b
mov r10b, byte [rbp + 0x198]
mov dword [rsp - 0x24], 0x33feb5b6
jns 0x140090cc5
or eax, 0x3000
mov dword [r8 + 0x21], eax
test sil, 0x20
mov rdx, rdx
je 0x140090d79
cmp dl, 3
jne 0x140090cec
or eax, 0x9000
mov rbp, rbp
mov dword [r8 + 0x21], eax
jmp 0x140090d79
mov dl, r10b
test r15b, r15b
mov dword [rsp - 0xc], 0x28a951d6
jne 0x140090d03
and dl, 0xfe
test r15b, r15b
lea rax, [rbp + 0xe8]
xchg r11, r11
lea rdi, [rbp + 0xd6]
cmovne rdi, rax
lea rcx, [rbp + 0xbe]
lea rax, [rbp + 0xd6]
mov r9, r9
cmovne rcx, rax
jmp 0x140090d44
cmp byte [rcx], dl
xchg rsi, rsi
je 0x140090d5a
sub rcx, 0xfffffffffffffffe
cmp rcx, rdi
jne 0x140090d35
mov dword [rsp - 0x28], 0x5dd76bbf
jmp 0x140090d6e
movzx eax, byte [rcx + 1]
mov cl, r12b
mov r14, r14
shl eax, cl
test al, al
jns 0x140090d79
or dword [r8 + 0x21], 0x9000
xchg rsp, rsp
movzx ecx, r13b
mov bl, 0x12
add bl, 0x2a
add bl, 0x1f
add bl, 6
sub bl, 0x5c
mov edx, ecx
xchg r8, r8
test r15b, r15b
je 0x140090e30
sub edx, 0x20
je 0x140090de8
mov dword [rsp - 0x20], edi
sub edx, 1
je 0x140090dc4
sub edx, 1
je 0x140090de8
mov r15, r15
cmp edx, 1
jne 0x140090e4d
lea eax, [r12 - 4]
xchg rcx, rcx
mov r11b, 0x25
sub r11b, 0x22
xor r11b, 0x1d
sub r11b, 0x1b
cmp al, 1
ja 0x140090f89
jmp 0x140090f81
mov ecx, 0x402042d3
add ecx, 0x2777ecb5
xor ecx, 0x7b5a24e7
add ecx, 0x5b8892a5
sub ecx, 0x784a9e10
mov r11b, 0x10
add r11b, 0x54
xor r11b, 0x70
xor r11b, 0x17
cmp r12b, cl
mov dword [rsp - 0x38], edi
ja 0x140090f81
cmp r12b, 1
jne 0x140090f89
jmp 0x140090f81
sub edx, 0x8c
je 0x140090f6e
cmp edx, 2
mov dword [rsp - 0x28], 0x42711dd3
je 0x140090f55
mov r11b, byte [rbp + 0x190]
cmp r11b, 3
xchg rdx, rdx
jne 0x140090ef3
test r15b, r15b
je 0x140090e93
mov rbx, rbx
lea rdx, [rbp + 0x121]
lea rax, [rbp + 0xf7]
lea rcx, [rbp + 0xf7]
cmp rax, rdx
xchg rbx, rbx
je 0x140090f89
jmp 0x140090ea9
lea rdx, [rbp + 0xf7]
lea rcx, [rbp + 0xe8]
mov dword [rsp - 0x24], 0x6b7dc941
cmp byte [rcx], r10b
je 0x140090ecd
neg rcx
add rcx, 0xfffffffffffffffd
neg rcx
cmp rcx, rdx
mov r11, r11
jne 0x140090ea9
jmp 0x140090f89
test byte [rcx + 1], sil
je 0x140090f89
movzx eax, byte [rcx + 2]
xchg r15, r15
mov cl, r12b
shl eax, cl
test al, al
mov r13, r13
jns 0x140090f81
jmp 0x140090f89
test r15b, r15b
je 0x140090f89
sub ecx, 0x50
xchg rsp, rsp
je 0x140090f35
sub ecx, 0x75
je 0x140090f81
mov rbx, rbx
sub ecx, 0x11
je 0x140090f44
sub ecx, 1
mov r14, r14
je 0x140090f35
cmp ecx, 0x20
jne 0x140090f89
mov rsp, rsp
test sil, 9
jne 0x140090f81
jmp 0x140090f89
test sil, 6
mov dword [rsp - 0x20], 0x50f0ded
jmp 0x140090f39
mov r11b, byte [rbp + 0x190]
cmp r12b, 1
mov rsp, rsp
je 0x140090f81
jmp 0x140090f75
mov r11b, byte [rbp + 0x190]
cmp r12b, bl
xchg rdx, rdx
jbe 0x140090f89
or dword [r8 + 0x21], 0x11000
mov dl, byte [r9 + 1]
mov dword [rsp - 0xc], 0x19724e10
nop
add r9, 0x563dab08
sub r9, 0x563dab06
cmp r12b, 1
mov dword [rsp - 0x10], edx
ja 0x140090fd9
cmp r10b, 0xf6
jne 0x140090fc8
or r14b, 2
mov r12, r12
jmp 0x140090fd9
cmp r10b, 0xf7
xchg rcx, rcx
jne 0x140090fd9
or r14b, 0x10
mov al, byte [rbp + 0x188]
movzx ecx, r11b
xchg rsp, rsp
test r11b, r11b
je 0x140091079
sub ecx, 1
mov dword [rsp - 0x1c], ebx
je 0x14009104a
cmp ecx, 1
pushf
mov ecx, 0x12630b36
xor ecx, 0x3f8d823f
add ecx, 0x3ef19314
add ecx, 0xb1d2969
xor ecx, 0x77fd4582
popf
jne 0x1400910d8
mov dil, 0x71
sub dil, 0x2c
xor dil, 0x79
sub dil, 0x3a
test sil, 0x10
jne 0x1400910dc
mov dil, cl
mov r12, r12
jmp 0x1400910dc
mov dil, 0x38
xor dil, 0x26
add dil, 0x4b
sub dil, 0x16
sub dil, 0x52
mov ecx, 0x5381cea5
sub ecx, 0x19769d86
xor ecx, 0xc7adda6
sub ecx, 0x3671ecb5
jmp 0x1400910dc
mov ecx, 0x411565c1
add ecx, 0x2aa16ed9
xor ecx, 0x6b06926f
add ecx, 0x6a268692
sub ecx, 0x6ad6cd83
test sil, 0x10
je 0x1400910ba
mov dword [rsp - 0x1c], ebx
cmp al, 6
setne dil
dec dil
and dil, 2
mov dword [rsp - 0x30], ecx
jmp 0x1400910dc
mov edi, dword [rsp + 4]
mov dword [rsp - 0xc], 0x42bbc863
cmp al, bl
movzx edi, dil
cmove edi, ecx
mov dword [rsp - 0x38], ebx
jmp 0x1400910dc
mov edi, dword [rsp + 4]
cmp r11b, 3
je 0x140091150
mov dword [rsp - 0x3c], 0x2ed44cb
cmp al, cl
jne 0x140091150
or dword [r8 + 0x21], 2
mov r11, r11
mov al, dl
shr al, 1
shr al, 4
shr al, 1
inc r9
mov byte [r8 + 0x12], al
xchg r11, r11
mov al, dl
shr al, 1
shr al, 1
shr al, 1
and al, 7
mov dword [rsp - 0x10], 0x99b400c
mov byte [r8 + 0x11], dl
and dl, 7
mov byte [r8 + 0x13], al
mov byte [r8 + 0x14], dl
xchg r11, r11
cmp dl, bl
jne 0x140091150
test r11b, 1
movzx edi, dil
mov dword [rsp - 0x40], 0x7295df71
cmove edi, ecx
dec r9
movzx ecx, dil
sub ecx, 1
mov dword [rsp - 0x3c], 0x3d7d42f5
je 0x1400911ae
sub ecx, 1
je 0x140091192
xchg rbx, rbx
cmp ecx, 2
jne 0x1400911bd
bts dword [r8 + 0x21], 8
mov eax, dword [r9]
mov r8, r8
mov dword [r8 + 0x1d], eax
jmp 0x1400911bd
bts dword [r8 + 0x21], 7
movzx eax, word [r9]
mov word [r8 + 0x1d], ax
mov dword [rsp - 0x2c], 0x7aa3dba4
jmp 0x1400911bd
or dword [r8 + 0x21], 0x40
mov al, byte [r9]
mov byte [r8 + 0x1d], al
xchg rbp, rbp
mov r12d, dword [rsp]
movzx eax, dil
add r9, rax
mov dword [rsp - 0x28], 0x554bd517
jmp 0x1400911ed
test sil, 0x20
xchg rbx, rbx
je 0x1400911ed
or r11d, 0x9000
mov dword [r8 + 0x21], r11d
test r14b, 0x10
mov r15, r15
je 0x140091289
test r14b, 0x40
je 0x14009125f
xchg rbp, rbp
test sil, 8
je 0x14009123d
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
xchg rdi, rdi
nop
add r9, 0x5830f2ae
sub r9, 0x5830f2ac
mov word [r8 + 0x15], ax
mov dword [rsp - 0x34], ebx
jmp 0x14009136b
mov ecx, 0x55c63b52
xor ecx, 0x7ad40fd9
add ecx, 0x40e7df5a
xor ecx, 0x16e063de
sub ecx, 0x791a7037
jmp 0x1400912ee
test r12b, r12b
xchg r9, r9
je 0x140091308
or dword [r8 + 0x21], 0x20
xchg r11, rax
mov r11, qword [r9]
xchg r11, rax
neg r9
add r9, 0xfffffffffffffff8
neg r9
mov qword [r8 + 0x15], rax
mov dword [rsp - 0x1c], ebx
mov ecx, 0x3720a491
sub ecx, 0x3273cce3
add ecx, 0x2bb4e7e8
xor ecx, 0x3061bf92
test cl, r14b
je 0x1400912c6
mov dword [rsp - 0x44], 0x69d0a790
or dword [r8 + 0x21], 8
movzx eax, word [r9]
sub r9, 0xfffffffffffffffe
mov word [r8 + 0x15], ax
mov r15, r15
test r14b, 2
je 0x1400912e1
or dword [r8 + 0x21], ecx
mov r14, r14
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
test r14b, 0x40
mov rdi, rdi
je 0x140091349
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
add r9, rcx
xchg r8, r8
mov dword [r8 + 0x15], eax
jmp 0x14009136b
mov ecx, 0x6cd79429
sub ecx, 0x478c345
xor ecx, 0xbe77660
sub ecx, 0x575edd14
xor ecx, 0xc5ac974
test sil, 8
jne 0x1400912b1
xchg r9, r9
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, rcx
mov dword [r8 + 0x15], eax
xchg rcx, rcx
jmp 0x1400912a0
test r14b, 0x20
je 0x14009136b
xchg r14, r14
or dword [r8 + 0x21], 0x204
mov al, byte [r9]
inc r9
mov r14, r14
mov byte [r8 + 0x15], al
sub r9b, byte [rbp + 0x180]
mov byte [r8], r9b
xchg r10, r10
cmp r9b, 0xf
jbe 0x1400913b1
or dword [r8 + 0x21], 0x5000
mov dword [rsp - 0x30], 0x7304699f
mov r9b, 0x77
sub r9b, 0xd
xor r9b, 0x21
sub r9b, 0x3c
mov byte [r8], 7
xor byte [r8], 6
add byte [r8], 0x6d
xor byte [r8], 0x61
xor eax, eax
mov rsi, rsi
lea rdi, [rsp + 0x10]
mov ecx, 0x3857b999
xor ecx, 0x5ed13c8a
sub ecx, 0x3328f603
sub ecx, 0x335d8cff
rep stosb byte [rdi], al
mov dword [rsp - 0x18], 0xfb3888f
movzx eax, r9b
sub rsp, 0xfffffffffffffdc8
nop
mov r15, qword [rsp]
add rsp, 8
pop r14
mov r11, r11
pop r13
nop
mov r12, qword [rsp]
add rsp, 8
pop rdi
mov r14, r14
pop rsi
nop
add rsp, 8
mov rbx, qword [rsp - 8]
pop rbp
xchg r13, r13
ret