Function at 0x1400a9894
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
movaps xmmword [rsp + 0x140], xmm6
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0xc0], rcx
mov rax, qword [rsp + 0xc0]
movups xmmword [rax], xmm0
lea rax, [rdx + 0x28]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x28], rdx
mov rax, qword [rdx + 0x28]
mov qword [rsp + 0xf8], rax
xor eax, eax
lea rcx, [0x1400ffa70]
movsxd rdx, dword [rax + rcx]
xor dword [rsp + rdx*4 + 0x30], 0x78c104ba
add rax, 4
cmp rax, 0x44
jne 0x1400a9910
mov eax, 0x1b98f6ac
xor ecx, ecx
mov qword [rsp + 0xb8], rcx
lea r14, [0x1400ffb30]
lea r13, [0x1400ffba8]
lea r12, [0x1400ffa30]
xorps xmm6, xmm6
lea r15, [0x1400ffc5c]
lea rsi, [0x1400ffb98]
lea rdi, [0x1400ffb00]
lea rbx, [0x1400ffb60]
lea rbp, [0x1400ffb80]
xor ecx, ecx
mov qword [rsp + 0xb0], rcx
xor ecx, ecx
mov qword [rsp + 0xa8], rcx
xor ecx, ecx
mov qword [rsp + 0xa0], rcx
xor ecx, ecx
mov qword [rsp + 0x98], rcx
xor ecx, ecx
mov qword [rsp + 0x90], rcx
xor ecx, ecx
mov qword [rsp + 0x88], rcx
xor ecx, ecx
mov qword [rsp + 0x80], rcx
cmp eax, 0x431144a9
jle 0x1400a9a02
cmp eax, 0x62405f71
jg 0x1400a9a89
cmp eax, 0x55455781
jle 0x1400a9bfc
cmp eax, 0x55455782
je 0x1400a9c98
cmp eax, 0x5fcc2877
jne 0x1400a9f08
lea rcx, [0x1400fd650]
call fcn.140003721
mov eax, dword [rsp + 0x38]
mov ecx, 0x27c93e93
xor eax, ecx
jmp 0x1400a99b6
cmp eax, 0x23b1fc5e
jg 0x1400a9b03
cmp eax, 0x17ecc181
jg 0x1400a9c27
cmp eax, 0x33c4088
je 0x1400a9cad
cmp eax, 0xd5cdd11
jne 0x1400a99b6
mov rcx, qword [rsp + 0x100]
add rcx, qword [rsp + 0x108]
seto al
mov qword [rsp + 0x110], rcx
cmp byte [rsp + 0xa8], 0
jne 0x1400a9a67
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rsp + rdx*4 + 0x30], 0xe97711d
add rcx, 4
cmp rcx, 0x28
jne 0x1400a9a51
test al, al
mov eax, 0x71d89da3
mov ecx, 0x3050ad14
cmovne eax, ecx
xor eax, dword [rsp + 0x4c]
mov cl, 1
mov qword [rsp + 0xa8], rcx
jmp 0x1400a99b6
cmp eax, 0x77b2009b
jg 0x1400a9c42
cmp eax, 0x62405f72
je 0x1400a9cc2
cmp eax, 0x6af489b9
jne 0x1400a99b6
mov rax, qword [rsp + 0x28]
imul rcx, qword [rax + 0x18], 0x3c
seto al
mov qword [rsp + 0x118], rcx
cmp byte [rsp + 0xa0], 0
jne 0x1400a9ae1
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rsp + rdx*4 + 0x30], 0x3d971519
add rcx, 4
cmp rcx, 0x20
jne 0x1400a9acb
test al, al
mov eax, 0x6209659b
mov ecx, 0x688d6842
cmovne eax, ecx
xor eax, dword [rsp + 0x54]
mov cl, 1
mov qword [rsp + 0xa0], rcx
jmp 0x1400a99b6
cmp eax, 0x2745755c
jg 0x1400a9c6d
cmp eax, 0x23b1fc5f
je 0x1400a9d1e
cmp eax, 0x2529ff56
jne 0x1400a99b6
mov rdi, qword [rsp + 0x28]
movaps xmmword [rsp + 0xd0], xmm6
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax]
mov qword [rsp + 0x138], rax
xor eax, eax
movsxd rcx, dword [rax + r15]
xor dword [rsp + rcx*4 + 0xd0], 0x78c104ba
add rax, 4
cmp rax, 0xc
jne 0x1400a9b56
mov eax, 0x59f86fa6
mov bl, 1
mov esi, dword [rsp + 0xd8]
mov ecx, 0xc77b0d8
xor esi, ecx
cmp eax, 0xe97711d
je 0x1400a9d33
cmp eax, 0x23b3651a
je 0x1400a9b9f
cmp eax, 0x59f86fa6
jne 0x1400a9b84
jmp 0x1400a9baf
lea rcx, [0x1400fd840]
call fcn.140003721
mov eax, esi
jmp 0x1400a9b84
mov rax, qword [rsp + 0x138]
test bl, 1
lea rbx, [0x1400ffc54]
je 0x1400a9bde
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rsp + rdx*4 + 0xd0], 0x7a21c57f
add rcx, 4
cmp rcx, 8
jne 0x1400a9bc5
test rax, rax
mov eax, 0x765675a7
mov ecx, 0x5b7261a0
cmove eax, ecx
xor eax, dword [rsp + 0xd0]
xor ebx, ebx
jmp 0x1400a9b76
cmp eax, 0x431144aa
je 0x1400a9dd4
cmp eax, 0x520aa150
jne 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x60]
mov ecx, 0x2cf9a0cc
xor eax, ecx
jmp 0x1400a99b6
cmp eax, 0x17ecc182
je 0x1400a9e34
cmp eax, 0x1b98f6ac
je 0x1400a9f15
jmp 0x1400a99b6
cmp eax, 0x77b2009c
je 0x1400a9e94
cmp eax, 0x7d360d45
jne 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x58]
mov ecx, 0x5f9e7082
xor eax, ecx
jmp 0x1400a99b6
cmp eax, 0x2745755d
je 0x1400a9ef3
cmp eax, 0x2b7cb90e
jne 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x50]
mov ecx, 0x7f4fecbe
xor eax, ecx
jmp 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x68]
mov ecx, 0x1b48b31b
xor eax, ecx
jmp 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x48]
mov ecx, 0x1670c90b
xor eax, ecx
jmp 0x1400a99b6
mov rax, qword [rsp + 0x28]
imul rcx, qword [rax + 0x20], 0xe10
seto al
mov qword [rsp + 0x108], rcx
cmp byte [rsp + 0xb0], 0
jne 0x1400a9cfc
xor ecx, ecx
movsxd rdx, dword [rcx + rdi]
xor dword [rsp + rdx*4 + 0x30], 0x28a16966
add rcx, 4
cmp rcx, 0x30
jne 0x1400a9ce6
test al, al
mov eax, 0x3ed1a06d
mov ecx, 0x30b13df4
cmovne eax, ecx
xor eax, dword [rsp + 0x44]
mov cl, 1
mov qword [rsp + 0xb0], rcx
jmp 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x40]
mov ecx, 0x51cd220e
xor eax, ecx
jmp 0x1400a99b6
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rax]
mov rcx, rdi
call fcn.1400a97be
mov r8, qword [rdi + 0x38]
mov rcx, rbx
mov edx, eax
call fcn.1400a2b37
imul rcx, rax, 0x15180
seto al
mov qword [rsp + 0x100], rcx
cmp byte [rsp + 0xb8], 0
lea rbx, [0x1400ffac0]
jne 0x1400a9d8f
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rsp + rdx*4 + 0x30], 0x316dbcb9
add rcx, 4
cmp rcx, 0x38
jne 0x1400a9d79
test al, al
mov eax, 0x60a09eb7
mov ecx, 0x21513d9a
cmovne eax, ecx
xor eax, dword [rsp + 0x3c]
mov cl, 1
mov qword [rsp + 0xb8], rcx
lea r12, [0x1400ffa30]
lea rsi, [0x1400ffb98]
lea rdi, [0x1400ffb00]
lea rbx, [0x1400ffb60]
lea rbp, [0x1400ffb80]
jmp 0x1400a99b6
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax + 0x10]
add rcx, qword [rsp + 0x120]
seto al
mov qword [rsp + 0x128], rcx
cmp byte [rsp + 0x90], 0
jne 0x1400a9e12
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rsp + rdx*4 + 0x30], 0x634c96ff
add rcx, 4
cmp rcx, 0x10
jne 0x1400a9dfc
test al, al
mov eax, 0x780425e4
mov ecx, 0x3aadb3e4
cmovne eax, ecx
xor eax, dword [rsp + 0x64]
mov cl, 1
mov qword [rsp + 0x90], rcx
jmp 0x1400a99b6
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax + 0x60]
add rcx, qword [rsp + 0x128]
seto al
mov qword [rsp + 0x130], rcx
cmp byte [rsp + 0x88], 0
jne 0x1400a9e72
xor ecx, ecx
movsxd rdx, dword [rcx + r13]
xor dword [rsp + rdx*4 + 0x30], 0x7cbfe930
add rcx, 4
cmp rcx, 8
jne 0x1400a9e5c
test al, al
mov eax, 0x531c8cbe
mov ecx, 0x2be107c4
cmovne eax, ecx
xor eax, dword [rsp + 0x6c]
mov cl, 1
mov qword [rsp + 0x88], rcx
jmp 0x1400a99b6
mov rcx, qword [rsp + 0x110]
add rcx, qword [rsp + 0x118]
seto al
mov qword [rsp + 0x120], rcx
cmp byte [rsp + 0x98], 0
jne 0x1400a9ed1
xor ecx, ecx
movsxd rdx, dword [rcx + rbp]
xor dword [rsp + rdx*4 + 0x30], 0x47c49478
add rcx, 4
cmp rcx, 0x18
jne 0x1400a9ebb
test al, al
mov eax, 0x6b3d34b4
mov ecx, 0x7a26d14e
cmovne eax, ecx
xor eax, dword [rsp + 0x5c]
mov cl, 1
mov qword [rsp + 0x98], rcx
jmp 0x1400a99b6
call fcn.140011264
mov eax, dword [rsp + 0x70]
mov ecx, 0x2fa3658e
xor eax, ecx
jmp 0x1400a99b6
cmp eax, 0x5fb8fe27
jne 0x1400a99b6
jmp 0x1400a9f5a
mov rax, qword [rsp + 0xf8]
cmp byte [rsp + 0x80], 0
jne 0x1400a9f3f
xor ecx, ecx
movsxd rdx, dword [rcx + r12]
xor dword [rsp + rdx*4 + 0x30], 0x7a21c57f
add rcx, 4
cmp rcx, 0x40
jne 0x1400a9f29
test rax, rax
mov eax, 0x5de8fbec
mov ecx, 0x270d2ccd
cmove eax, ecx
xor eax, dword [rsp + 0x30]
mov cl, 1
jmp 0x1400a99ae
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0xc0]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
mov rax, qword [rsp + 0xe8]
movaps xmm6, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret