Function at 0x180009e58
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2a8
movaps xmmword [rsp + 0x290], xmm15
movaps xmmword [rsp + 0x280], xmm14
movaps xmmword [rsp + 0x270], xmm13
movaps xmmword [rsp + 0x260], xmm12
movaps xmmword [rsp + 0x250], xmm11
movaps xmmword [rsp + 0x240], xmm10
movaps xmmword [rsp + 0x230], xmm9
movaps xmmword [rsp + 0x220], xmm8
movaps xmmword [rsp + 0x210], xmm7
movaps xmmword [rsp + 0x200], xmm6
movss xmm6, dword [0x1800180f0]
addss xmm6, dword [0x180014a34]
divss xmm6, dword [0x180014a38]
addss xmm6, dword [0x1800147bc]
movapd xmm7, xmmword [0x1800180d0]
addpd xmm7, xmmword [0x180014a40]
movapd xmm8, xmmword [0x180014a50]
addpd xmm8, xmm7
movapd xmmword [rsp + 0x180], xmm8
xorps xmm0, xmm0
movhps xmm0, qword [0x180014a60]
movaps xmmword [rsp + 0x100], xmm0
mov rcx, qword [0x180018e48]
lea rdx, [rsp + 0x7c]
lea r8, [rsp + 0x78]
call fcn.18000efe6
cmp dword [0x18001911c], 0
je 0x180009f45
movaps xmm0, xmmword [0x180014150]
jmp 0x180009f4c
movaps xmm0, xmmword [0x1800180e0]
movaps xmm1, xmmword [0x1800149f0]
movaps xmmword [rsp + 0x170], xmm1
lea rax, [rsp + 0x1c0]
movaps xmmword [rax], xmm0
lea rdx, [rsp + 0x1b0]
movapd xmmword [rdx], xmm8
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
movss xmm3, dword [0x180014a68]
movaps xmm2, xmm6
call fcn.180003004
mov rbx, qword [0x180018e18]
movaps xmm0, xmmword [0x180014a00]
movaps xmmword [rsp + 0x150], xmm0
lea rsi, [rsp + 0x82]
movaps xmm0, xmmword [0x180014a70]
movaps xmmword [rsi - 2], xmm0
mov word [rsi + 0x1a], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 0xf
inc rax
cmp rax, 0xe
jne 0x180009fc4
mov word [rsp + 0x9c], 0
xorps xmm9, xmm9
movaps xmmword [rsp + 0xf0], xmm9
cmp word [rsp + 0x82], 0
je 0x18000a019
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0xf8], eax
mov dword [rsp + 0xfc], eax
je 0x18000a019
mov qword [rsp + 0xf0], rsi
mov r8, qword [0x1800190b0]
lea r13, [rsp + 0x150]
mov qword [rsp + 0x20], r13
lea r14, [rsp + 0x1f0]
lea rdi, [rsp + 0xf0]
mov rcx, rbx
mov rdx, r14
mov r9, rdi
call fcn.18000e680
movss xmm0, dword [0x1800141a0]
mulss xmm0, xmm6
cvtss2sd xmm10, xmm0
movapd xmm0, xmm8
addsd xmm0, xmm10
movsd xmm1, qword [r14]
mulsd xmm1, qword [0x1800140c0]
addsd xmm1, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
mov r14, qword [0x180018e18]
movaps xmm13, xmmword [0x1800140d0]
movaps xmmword [r13], xmm13
movaps xmmword [rdi], xmm9
movaps xmmword [rsp + 0x120], xmm13
movapd xmm14, xmm8
unpckhpd xmm14, xmm8
movapd xmm12, xmm14
addsd xmm12, qword [0x180014a80]
movaps xmm1, xmmword [0x180014a00]
movaps xmmword [rsp + 0xd0], xmm1
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0xc0], xmm0
movsd qword [rsp + 0xc8], xmm12
movaps xmm0, xmmword [str.h____h]
movaps xmmword [rsp + 0x80], xmm0
mov word [rsp + 0x9c], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 0x68
inc rax
cmp rax, 0xe
jne 0x18000a0fb
mov word [rsp + 0x9c], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0xb0], xmm0
cmp word [rsp + 0x82], 0
je 0x18000a14e
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xbc], eax
je 0x18000a14e
mov qword [rsp + 0xb0], rsi
mov rdx, qword [0x1800190b0]
mov qword [rsp + 0x60], r13
xor eax, eax
mov byte [rsp + 0x58], al
mov byte [rsp + 0x50], al
mov byte [rsp + 0x48], al
mov qword [rsp + 0x40], rdi
lea rdi, [rsp + 0x120]
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0x170]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0x3f800000
lea rbx, [rsp + 0xb0]
lea r9, [rsp + 0xc0]
mov rcx, r14
mov r8, rbx
call fcn.18000e7aa
movss xmm1, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x7c]
cvtss2sd xmm3, xmm6
cvtsd2ss xmm2, xmm14
movss dword [rsp + 0x74], xmm2
movapd xmm2, xmmword [0x180014aa0]
movaps xmmword [rsp + 0x140], xmm3
movsd xmm2, xmm3
movapd xmm3, xmm8
addpd xmm3, xmm2
cvtpd2ps xmm11, xmm3
movaps xmm2, xmm0
unpcklps xmm2, xmm1
cmpltps xmm2, xmm11
unpcklps xmm2, xmm2
movmskpd eax, xmm2
test al, 2
je 0x18000a265
ucomiss xmm1, dword [rsp + 0x74]
jbe 0x18000a265
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm8
ucomiss xmm0, xmm1
jbe 0x18000a265
test al, 1
je 0x18000a265
mov rcx, qword [0x180018e48]
lea rdx, [0x18001827c]
call fcn.18000ecb6
test al, al
je 0x18000a265
mov dword [0x18001911c], 0
movss xmm0, dword [0x1800141e0]
addss xmm0, xmm6
cvtss2sd xmm15, xmm0
movsd qword [rsp + 0x100], xmm15
addsd xmm8, xmm15
jmp 0x18000a299
mov eax, dword [0x18001911c]
movss xmm0, dword [0x1800141e0]
addss xmm0, xmm6
cvtss2sd xmm15, xmm0
movsd qword [rsp + 0x100], xmm15
addsd xmm8, xmm15
cmp eax, 1
jne 0x18000a299
movaps xmm0, xmmword [0x1800180e0]
jmp 0x18000a2a0
movaps xmm0, xmmword [0x180014150]
movaps xmm1, xmmword [0x1800149f0]
movaps xmmword [rsp + 0x150], xmm1
lea rax, [rsp + 0x1a0]
movaps xmmword [rax], xmm0
lea rdx, [rsp + 0x1e0]
movsd qword [rdx], xmm8
movsd qword [rdx + 8], xmm14
mov qword [rsp + 0x20], rax
lea r14, [rsp + 0x80]
movss xmm3, dword [0x180014a68]
mov rcx, r14
movaps xmm2, xmm6
call fcn.180003004
mov r15, qword [0x180018e18]
movaps xmm0, xmmword [0x180014a00]
movaps xmmword [rsp + 0x120], xmm0
movaps xmm0, xmmword [0x180014ab0]
movaps xmmword [r14], xmm0
mov word [r14 + 0x10], 0x5d
mov word [r14 + 0x20], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 0x5d
inc rax
cmp rax, 0x10
jne 0x18000a321
mov word [rsp + 0xa0], 0
xorps xmm9, xmm9
movaps xmmword [rsp + 0xd0], xmm9
cmp word [rsp + 0x82], 0
je 0x18000a376
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0xdc], eax
je 0x18000a376
mov qword [rsp + 0xd0], rsi
mov r8, qword [0x1800190b0]
mov qword [rsp + 0x20], rdi
lea r12, [rsp + 0xf0]
lea r14, [rsp + 0xd0]
mov rcx, r15
mov rdx, r12
mov r9, r14
call fcn.18000e680
movapd xmm0, xmm8
addsd xmm0, xmm10
movsd xmm1, qword [r12]
mulsd xmm1, qword [0x1800140c0]
addsd xmm1, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
mov r15, qword [0x180018e18]
movaps xmmword [rsp + 0x120], xmm13
movaps xmmword [r14], xmm9
movaps xmmword [rsp + 0xc0], xmm13
movaps xmm1, xmmword [0x180014a00]
movaps xmmword [rsp + 0xb0], xmm1
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x130], xmm0
movsd qword [rsp + 0x138], xmm12
movaps xmm0, xmmword [str._aQNTRFKT]
movaps xmmword [rsp + 0x80], xmm0
mov word [rsp + 0x90], 7
mov word [rsp + 0xa0], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 7
inc rax
cmp rax, 0x10
jne 0x18000a42e
mov word [rsp + 0xa0], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0xe0], xmm0
cmp word [rsp + 0x82], 0
je 0x18000a481
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0xe8], eax
mov dword [rsp + 0xec], eax
je 0x18000a481
mov qword [rsp + 0xe0], rsi
mov rdx, qword [0x1800190b0]
mov qword [rsp + 0x60], rdi
xor eax, eax
mov byte [rsp + 0x58], al
mov byte [rsp + 0x50], al
mov byte [rsp + 0x48], al
mov qword [rsp + 0x40], r14
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x30], 0x3f800000
lea rbx, [rsp + 0xe0]
lea r14, [rsp + 0x130]
mov rcx, r15
mov r8, rbx
mov r9, r14
call fcn.18000e7aa
movss xmm0, dword [rsp + 0x78]
shufps xmm11, xmm11, 0x55
ucomiss xmm11, xmm0
jbe 0x18000a55b
ucomiss xmm0, dword [rsp + 0x74]
jbe 0x18000a55b
movss xmm0, dword [rsp + 0x7c]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm8
ucomiss xmm0, xmm1
jbe 0x18000a55b
movapd xmm1, xmm8
addsd xmm1, qword [rsp + 0x140]
cvtsd2ss xmm1, xmm1
ucomiss xmm1, xmm0
jbe 0x18000a55b
mov rcx, qword [0x180018e48]
lea rdx, [0x18001827c]
call fcn.18000ecb6
test al, al
je 0x18000a55b
mov dword [0x18001911c], 1
movapd xmm9, xmm15
addsd xmm9, xmm15
movsd qword [rsp + 0x100], xmm9
addsd xmm8, xmm15
jmp 0x18000a588
mov eax, dword [0x18001911c]
movapd xmm9, xmm15
addsd xmm9, xmm15
movsd qword [rsp + 0x100], xmm9
addsd xmm8, xmm15
cmp eax, 2
jne 0x18000a588
movaps xmm0, xmmword [0x1800180e0]
jmp 0x18000a58f
movaps xmm0, xmmword [0x180014150]
movaps xmm1, xmmword [0x1800149f0]
movaps xmmword [rsp + 0x120], xmm1
lea rax, [rsp + 0x190]
movaps xmmword [rax], xmm0
lea rdx, [rsp + 0x1d0]
movsd qword [rdx], xmm8
movsd qword [rdx + 8], xmm14
mov qword [rsp + 0x20], rax
lea r15, [rsp + 0x80]
movss xmm3, dword [0x180014a68]
mov rcx, r15
movaps xmm2, xmm6
call fcn.180003004
mov r13, qword [0x180018e18]
movaps xmm0, xmmword [0x180014a00]
movaps xmmword [rsp + 0xc0], xmm0
movabs rax, 0x620078007c0031
mov qword [r15], rax
mov dword [r15 + 8], 0x310072
mov word [r15 + 0x14], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 0x31
inc rax
cmp rax, 0xa
jne 0x18000a613
mov word [rsp + 0x94], 0
xorps xmm6, xmm6
movaps xmmword [rsp + 0xb0], xmm6
cmp word [rsp + 0x82], 0
je 0x18000a666
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xbc], eax
je 0x18000a666
mov qword [rsp + 0xb0], rsi
mov r8, qword [0x1800190b0]
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea rbp, [rsp + 0xd0]
lea r12, [rsp + 0xb0]
mov rcx, r13
mov rdx, rbp
mov r9, r12
call fcn.18000e680
addsd xmm10, xmm8
movsd xmm0, qword [rbp]
mulsd xmm0, qword [0x1800140c0]
addsd xmm0, xmm10
cvtsd2ss xmm0, xmm0
mov r13, qword [0x180018e18]
movaps xmmword [rsp + 0xc0], xmm13
movaps xmmword [r12], xmm6
movaps xmmword [rsp + 0x130], xmm13
movaps xmm1, xmmword [0x180014a00]
movaps xmmword [rsp + 0xe0], xmm1
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x160], xmm0
movsd qword [rsp + 0x168], xmm12
movabs rax, 0x70006a006e0023
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x88], 0x230060
mov word [rsp + 0x94], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x80], 0x23
inc rax
cmp rax, 0xa
jne 0x18000a723
mov word [rsp + 0x94], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x110], xmm0
cmp word [rsp + 0x82], 0
je 0x18000a776
mov rcx, rsi
call fcn.18001244c
inc eax
mov dword [rsp + 0x118], eax
mov dword [rsp + 0x11c], eax
je 0x18000a776
mov qword [rsp + 0x110], rsi
mov rdx, qword [0x1800190b0]
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x60], rax
xor eax, eax
mov byte [rsp + 0x58], al
mov byte [rsp + 0x50], al
mov byte [rsp + 0x48], al
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x30], 0x3f800000
lea r8, [rsp + 0x110]
lea r9, [rsp + 0x160]
mov rcx, r13
call fcn.18000e7aa
movss xmm0, dword [rsp + 0x78]
ucomiss xmm11, xmm0
jbe 0x18000a82a
ucomiss xmm0, dword [rsp + 0x74]
jbe 0x18000a82a
movss xmm0, dword [rsp + 0x7c]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm8
ucomiss xmm0, xmm1
jbe 0x18000a82a
addsd xmm8, qword [rsp + 0x140]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm8
ucomiss xmm1, xmm0
jbe 0x18000a82a
mov rcx, qword [0x180018e48]
lea rdx, [0x18001827c]
call fcn.18000ecb6
test al, al
je 0x18000a82a
mov dword [0x18001911c], 2
addsd xmm9, xmm15
lea rsi, [rsp + 0x100]
movsd qword [rsi], xmm9
mov rcx, qword [0x180018e18]
movaps xmm0, xmmword [0x1800149a0]
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x20], r15
lea rdi, [rsp + 0x180]
movss xmm3, dword [0x1800141a4]
mov rdx, rdi
mov r8, rsi
call fcn.18000e364
movaps xmm0, xmmword [rdi]
movups xmmword [0x1800190f0], xmm0
movaps xmm0, xmmword [rsi]
movups xmmword [0x180019100], xmm0
movapd xmm0, xmm7
unpckhpd xmm0, xmm7
addsd xmm0, qword [0x180014ad0]
movlpd qword [0x180019120], xmm7
movsd qword [0x180019128], xmm0
movaps xmm6, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm8, xmmword [rsp + 0x220]
movaps xmm9, xmmword [rsp + 0x230]
movaps xmm10, xmmword [rsp + 0x240]
movaps xmm11, xmmword [rsp + 0x250]
movaps xmm12, xmmword [rsp + 0x260]
movaps xmm13, xmmword [rsp + 0x270]
movaps xmm14, xmmword [rsp + 0x280]
movaps xmm15, xmmword [rsp + 0x290]
add rsp, 0x2a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret