Function at 0x140136560
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x3f0
mov rax, qword [0x1401bb548]
xor rax, rsp
mov qword [rsp + 0x3e0], rax
movzx ebx, cl
mov byte [rsp + 0x41], cl
xor r13b, r13b
mov byte [rsp + 0x40], r13b
xor r15d, r15d
mov dword [r11 - 0x360], r15d
mov rdx, qword [0x1401c27e8]
mov qword [r11 - 0x368], rdx
movzx eax, byte [0x140082edc]
xor al, 0x2a
mov byte [rsp + 0xc8], al
movzx eax, byte [0x140082edd]
xor al, 0xc1
mov byte [rsp + 0xc9], al
movzx eax, byte [0x140082ede]
xor al, 0x68
mov byte [rsp + 0xca], al
movzx eax, byte [0x140082edf]
xor al, 0x7e
mov byte [rsp + 0xcb], al
movzx eax, byte [0x140082ee0]
xor al, 0x2a
mov byte [rsp + 0xcc], al
movzx eax, byte [0x140082ee1]
xor al, 0xc1
mov byte [rsp + 0xcd], al
mov byte [r11 - 0x33a], r13b
call qword [rdx + 0x350]
mov edi, eax
mov dword [rsp + 0x44], eax
mov r14d, 0x41
mov dword [rsp + 0x48], r14d
test eax, eax
je 0x140136bb0
lea r12d, [r14 + 0x60]
test dil, 1
je 0x140136b8f
mov byte [rsp + 0xcc], r14b
lea rcx, [rsp + 0xcc]
mov rax, qword [rsp + 0xa0]
call qword [rax + 0x358]
cmp eax, 2
je 0x14013667a
cmp eax, 4
jne 0x140136684
jmp 0x140136b8f
cmp r14d, 0x41
je 0x140136b8f
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x40000000
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0xc0000000
lea r8d, [r9 + 3]
lea rcx, [rsp + 0xc8]
mov rax, qword [rsp + 0xa0]
call qword [rax + 0x330]
mov rsi, rax
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x14013692e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xc0], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.1401361b0
test eax, eax
je 0x14013692e
movzx eax, byte [rsp + 0xb3]
test al, al
je 0x14013692e
test al, 0x10
mov ebx, 0xec
cmovne ebx, r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xe8], xmm0
xor edx, edx
mov r8d, 0x210
lea rcx, [rsp + 0x1d0]
call fcn.140174eb0
mov byte [rsp + 0xd9], 2
mov word [rsp + 0xdd], 0x101
mov byte [rsp + 0xe1], 0xb0
mov byte [rsp + 0xe2], bl
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x210
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x20], rax
mov r9d, 0x20
lea r8, [rsp + 0xd8]
mov edx, 0x7c088
mov rcx, rsi
mov rax, qword [rsp + 0xa0]
call qword [rax + 0x340]
test eax, eax
je 0x14013692e
mov rbx, r15
nop dword [rax + rax]
movzx ecx, byte [rsp + rbx + 0x212]
call fcn.1401129e0
xor al, 0xc1
mov byte [rsp + rbx + 0xf9], al
movzx ecx, byte [rsp + rbx + 0x213]
call fcn.1401129e0
xor al, 0xc1
mov byte [rsp + rbx + 0xf8], al
add rbx, 2
cmp rbx, 0x28
jl 0x1401367e0
mov qword [rsp + 0x50], r15
mov r15, qword [0x140082e00]
test r15, r15
je 0x140136b79
xor eax, eax
lea rsi, [0x140082e00]
nop dword [rax]
nop dword [rax + rax]
mov r14d, dword [rax + rsi + 8]
mov esi, 0x27
cmp r14d, esi
ja 0x140136904
lea rbx, [rsp + 0xf8]
movzx r12d, byte [r15]
mov r8d, esi
mov edx, r12d
lea rcx, [rsp + 0xf8]
call fcn.140175130
mov rdi, rax
test rax, rax
je 0x140136904
nop
sub ebx, edi
add esi, ebx
cmp esi, r14d
jb 0x140136904
mov r8, r14
mov rdx, r15
mov rcx, rdi
call fcn.140175050
test eax, eax
je 0x1401368b9
dec esi
lea rbx, [rdi + 1]
mov r8d, esi
mov edx, r12d
mov rcx, rbx
call fcn.140175130
mov rdi, rax
test rax, rax
jne 0x140136880
jmp 0x140136904
test rdi, rdi
je 0x140136904
mov rax, qword [0x1401ba280]
mov rbx, rax
cmp qword [rax], 0
je 0x140136b5d
movsxd rax, dword [rbx + 8]
cmp eax, 0x27
jg 0x1401368f2
mov r8, rax
lea rdx, [rsp + 0xf8]
mov rcx, qword [rbx]
call fcn.140175050
test eax, eax
je 0x1401368fc
add rbx, 0x10
cmp qword [rbx], 0
jmp 0x1401368cc
xor r13b, r13b
mov byte [rsp + 0x40], r13b
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
shl rax, 4
lea rsi, [0x140082e00]
mov r15, qword [rax + rsi]
test r15, r15
je 0x140136b65
jmp 0x140136840
cmp rsi, 0xffffffffffffffff
jne 0x14013697a
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x40000000
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor edx, edx
lea r8d, [rsi + 4]
lea rcx, [rsp + 0xc8]
mov rax, qword [rsp + 0xa0]
call qword [rax + 0x330]
mov rsi, rax
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
je 0x140136b8f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x130], xmm0
movups xmmword [rsp + 0x140], xmm0
movups xmmword [rsp + 0x150], xmm0
movups xmmword [rsp + 0x160], xmm0
movups xmmword [rsp + 0x170], xmm0
movups xmmword [rsp + 0x180], xmm0
movups xmmword [rsp + 0x190], xmm0
movups xmmword [rsp + 0x1a0], xmm0
movups xmmword [rsp + 0x1b0], xmm0
mov dword [rsp + 0x1c0], eax
mov word [rsp + 0x1c4], ax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x130]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x90], rax
lea rdx, [rsp + 0x80]
mov rcx, rsi
call fcn.140136090
test eax, eax
je 0x140136b79
cmp dword [rsp + 0x130], 0x28
jne 0x140136b79
lea r12, [0x140073888]
mov ecx, r15d
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x13c]
test eax, eax
je 0x140136a87
lea r12, [rsp + 0x130]
add r12, rax
mov edi, r15d
movzx eax, byte [r12]
test al, al
je 0x140136a7c
mov rbx, r12
nop
movsx ecx, al
call fcn.1401129e0
xor al, 0xc1
mov byte [rbx], al
inc edi
lea rbx, [rbx + 1]
movzx eax, byte [rbx]
test al, al
jne 0x140136a60
mov ecx, r15d
test edi, edi
je 0x140136a87
lea ecx, [rdi - 1]
mov dword [rsp + 0x50], ecx
lea r14, [0x140073888]
mov eax, dword [rsp + 0x140]
test eax, eax
je 0x140136ad6
lea r14, [rsp + 0x130]
add r14, rax
xor edi, edi
movzx eax, byte [r14]
test al, al
je 0x140136ace
mov rbx, r14
movsx ecx, al
call fcn.1401129e0
xor al, 0xc1
mov byte [rbx], al
inc edi
lea rbx, [rbx + 1]
movzx eax, byte [rbx]
test al, al
jne 0x140136ab1
mov ecx, dword [rsp + 0x50]
test edi, edi
je 0x140136ad6
lea r15d, [rdi - 1]
xor edi, edi
mov rbx, qword [0x140082e00]
test rbx, rbx
je 0x140136b6a
xor eax, eax
nop word [rax + rax]
lea rdx, [0x140082e00]
mov esi, dword [rax + rdx + 8]
mov r9d, esi
mov r8, rbx
mov edx, ecx
mov rcx, r12
call fcn.140136dc0
test rax, rax
jne 0x140136b5d
mov r9d, esi
mov r8, rbx
mov edx, r15d
mov rcx, r14
call fcn.140136dc0
test rax, rax
je 0x140136b3d
mov edx, r15d
mov rcx, r14
call fcn.140136380
movzx r13d, al
mov byte [rsp + 0x40], al
test al, al
jne 0x140136b65
inc rdi
mov rax, rdi
shl rax, 4
lea rcx, [0x140082e00]
mov rbx, qword [rax + rcx]
test rbx, rbx
mov ecx, dword [rsp + 0x50]
jne 0x140136af0
jmp 0x140136b65
mov r13b, 1
mov byte [rsp + 0x40], r13b
mov rsi, qword [rsp + 0x58]
mov r12d, 0xa1
mov edi, dword [rsp + 0x44]
mov r14d, dword [rsp + 0x48]
mov rax, qword [rsp + 0xa0]
mov rcx, rsi
call qword [rax + 0x348]
test r13b, r13b
jne 0x140136bab
shr edi, 1
mov dword [rsp + 0x44], edi
inc r14d
mov dword [rsp + 0x48], r14d
test edi, edi
mov r15d, 0
jne 0x140136643
movzx ebx, byte [rsp + 0x41]
xor eax, eax
mov qword [rsp + 0xc8], rax
mov word [rsp + 0xd0], ax
xor edx, edx
mov r8d, 0x210
lea rcx, [rsp + 0x1d0]
call fcn.140174eb0
test r13b, r13b
jne 0x140136bf2
test bl, bl
je 0x140136bed
call fcn.14013e6e9
jmp 0x140136bed
test r13b, r13b
je 0x140136c01
call fcn.14009aa10
mov dword [rax], 6
mov al, 1
jmp 0x140136c03
xor al, al
mov rcx, qword [rsp + 0x3e0]
xor rcx, rsp
call fcn.140172c20
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret