Function at 0x140093460
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x268
movaps xmmword [rsp + 0x250], xmm6
mov rax, r9
mov r9, r8
mov rdi, rdx
mov rbx, rcx
mov r8, qword [rsp + 0x2d0]
mov rcx, qword [0x1401ea088]
xor rcx, rsp
mov qword [rsp + 0x248], rcx
movaps xmm6, xmmword [section..rdata]
movaps xmmword [rsp + 0x1f0], xmm6
movaps xmmword [rsp + 0x1e0], xmm6
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
mov r14d, dword [r9 + 4]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x150], xmm0
movaps xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x170], 0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], 0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
lea rcx, [rsp + 0x30]
mov rdx, rax
call fcn.1400894f0
xor esi, esi
test eax, eax
je 0x140093b24
lea r13, [rsp + 0x58]
lea r15, [rsp + 0x138]
mov rcx, r15
mov rdx, r13
call fcn.140076890
test eax, eax
je 0x140093b24
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x158]
call fcn.140076890
test eax, eax
je 0x140093b24
lea rdx, [rsp + 0x38]
lea rbp, [rsp + 0x118]
mov rcx, rbp
call fcn.140076890
test eax, eax
je 0x140093b24
mov qword [rsp + 0x28], r14
mov r14, qword [rsp + 0x2f8]
mov rsi, qword [rsp + 0x2f0]
mov r12, qword [rsp + 0x2e8]
mov r8, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, r12
mov r8, rsi
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, r14
mov r8, qword [rsp + 0x300]
call qword [case.0x140031f00.0]
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x200]
mov rcx, rbp
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x120]
mov r12d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
mov rcx, rbp
lea rdx, [rsp + 0x158]
call fcn.140076890
test eax, eax
je 0x140093b22
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
lea rdx, [rsp + 0x200]
mov rcx, rbp
mov r8, r12
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x1c0]
mov rcx, rbp
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x120]
mov r12d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
movaps xmmword [rsp + 0x1b0], xmm6
movaps xmmword [rsp + 0x1a0], xmm6
movaps xmmword [rsp + 0x190], xmm6
movaps xmmword [rsp + 0x180], xmm6
mov rcx, r15
mov rdx, r13
call fcn.140076890
test eax, eax
je 0x140093b22
lea r15, [rsp + 0xa8]
lea rcx, [rsp + 0x158]
lea rdx, [rsp + 0x78]
call fcn.140076890
test eax, eax
je 0x140093b22
mov rcx, rbp
lea rdx, [rsp + 0x38]
call fcn.140076890
test eax, eax
je 0x140093b22
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x110], rax
mov r8d, r12d
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
lea rdx, [rsp + 0x1c0]
call qword [case.0x140031f00.0]
cmp rdi, qword [rsp + 0x28]
jbe 0x140093831
lea rcx, [rsp + 0xc8]
lea rdx, [rsp + 0x138]
call fcn.140076890
test eax, eax
je 0x140093b22
lea rcx, [rsp + 0xe8]
lea rdx, [rsp + 0x158]
call fcn.140076890
test eax, eax
je 0x140093b22
mov rcx, r15
mov rdx, rbp
call fcn.140076890
test eax, eax
je 0x140093b22
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x2e0]
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, qword [rsp + 0x2e8]
mov r8, qword [rsp + 0x2f0]
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, qword [rsp + 0x2f8]
mov r8, qword [rsp + 0x300]
call qword [case.0x140031f00.0]
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x20]
mov rcx, rbp
lea rsi, [rsp + 0x200]
mov rdx, rsi
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x120]
mov r12d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
mov rcx, rbp
lea rdx, [rsp + 0x158]
call fcn.140076890
test eax, eax
je 0x140093b22
mov rdx, rsi
mov rsi, r13
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov r8, r12
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x20]
mov rcx, rbp
lea rdx, [rsp + 0x180]
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x120]
mov r13d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
cmp rdi, r13
cmovb r13, rdi
test r13, r13
je 0x140093a13
cmp r13, 8
jae 0x140093985
xor eax, eax
jmp 0x140093a00
cmp r13, 0x20
jae 0x14009398f
xor eax, eax
jmp 0x1400939d6
mov eax, r13d
and eax, 0xffffffe0
xor ecx, ecx
nop word [rax + rax]
movups xmm0, xmmword [rbx + rcx]
movups xmm1, xmmword [rbx + rcx + 0x10]
xorps xmm0, xmmword [rsp + rcx + 0x180]
xorps xmm1, xmmword [rsp + rcx + 0x190]
movups xmmword [rbx + rcx], xmm0
movups xmmword [rbx + rcx + 0x10], xmm1
add rcx, 0x20
cmp rax, rcx
jne 0x1400939a0
cmp r13, rax
je 0x140093a13
test r13b, 0x18
je 0x140093a00
mov rcx, rax
mov eax, r13d
and eax, 0xfffffff8
nop
mov rdx, qword [rsp + rcx + 0x180]
xor qword [rbx + rcx], rdx
add rcx, 8
cmp rax, rcx
jne 0x1400939e0
jmp 0x140093a0e
movzx ecx, byte [rsp + rax + 0x180]
xor byte [rbx + rax], cl
inc rax
cmp r13, rax
jne 0x140093a00
sub rdi, r13
je 0x140093b88
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
mov rax, qword [rsp + 0xa8]
mov rax, qword [rax + 0x20]
mov rcx, r15
lea r14, [rsp + 0x200]
mov rdx, r14
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xb0]
mov r12d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
mov rcx, r15
lea rdx, [rsp + 0xe8]
call fcn.140076890
test eax, eax
je 0x140093b22
add rbx, r13
mov rax, qword [rsp + 0xa8]
mov rax, qword [rax + 0x18]
mov rcx, r15
mov rdx, r14
mov r8, r12
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0xa8]
mov rax, qword [rax + 0x20]
mov rcx, r15
lea rdx, [rsp + 0x1c0]
call qword [case.0x140031f00.0]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xb0]
mov r12d, dword [rax + 4]
mov edx, dword [rax + 0x2c]
call fcn.1400c0a00
movaps xmmword [rsp + 0x1b0], xmm6
movaps xmmword [rsp + 0x1a0], xmm6
movaps xmmword [rsp + 0x190], xmm6
movaps xmmword [rsp + 0x180], xmm6
lea rcx, [rsp + 0x138]
mov r13, rsi
mov rdx, rsi
call fcn.140076890
test eax, eax
jne 0x140093771
xor esi, esi
lea rcx, [rsp + 0x1c0]
mov edx, 0x40
call fcn.1400c0a00
lea rcx, [rsp + 0x110]
call fcn.140089980
lea rcx, [rsp + 0xa0]
call fcn.140089980
lea rcx, [rsp + 0x30]
call fcn.140089980
mov rcx, qword [rsp + 0x248]
xor rcx, rsp
call fcn.14015c2e0
mov eax, esi
movaps xmm6, xmmword [rsp + 0x250]
add rsp, 0x268
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov esi, 1
jmp 0x140093b24