Function at 0x1802fa340
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
xor r12d, r12d
movaps xmmword [rax - 0x38], xmm6
mov r15d, r12d
lea r14, str.prop_a4_pile_01
movabs r13, 0x98a4eb5d89a0c952
nop word [rax + rax]
mov rcx, qword [r14]
call fcn.1801ddc30
test al, al
je 0x1802fa715
mov rbp, qword [r14]
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rbx + rbp], r12b
jne 0x1802fa3a0
mov esi, r12d
mov edi, r12d
test rbx, rbx
je 0x1802fa3d8
mov rax, r12
movsx ecx, byte [rax + rbp]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
mov eax, esi
cmp rax, rbx
jb 0x1802fa3b7
lea eax, [rdi + rdi*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul ebx, ecx, 0x8001
mov ecx, ebx
call qword [0x1805b1b28]
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], ebx
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], r13
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
jne 0x1802fa489
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], ebx
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], r13
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x1802fa430
mov eax, dword [0x1805b11f0]
movabs rdi, 0x50fac3a3e030a6e1
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rdi
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xe0], r12
mov ecx, dword [rax]
movabs rax, 0x3fef770d40960d5a
mov dword [rsp + 0xe0], ecx
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xe0], r12
mov qword [0x180587120], rax
mov dword [rsp + 0xe0], 1
mov rax, qword [rsp + 0xe0]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], ebx
movsd xmm0, qword [rax + 0x10]
movups xmm6, xmmword [rax]
movabs rax, 0x35b9e0803292b641
mov dword [0x1805870f8], r12d
movsd qword [rsp + 0x90], xmm0
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x1802fa715
movabs rax, 0xc0296a2edf545e92
mov qword [rsp + 0xe0], r12
mov qword [0x1805dd278], rax
mov dword [rsp + 0xe0], ebx
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x1802fa715
mov ecx, ebx
call qword [0x1805b1b28]
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], ebx
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], r13
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x1802fa715
movss xmm0, dword [rsp + 0x90]
movaps xmm3, xmm6
shufps xmm3, xmm6, 0xaa
movaps xmm2, xmm6
mov dword [rsp + 0x38], 1
mov edx, ebx
movabs rcx, 0x509d5878eb39e842
movss dword [rsp + 0x20], xmm0
call fcn.1803005c0
movsxd rcx, dword [0x180568868]
lea rbx, [0x1805ae420]
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], eax
mov dword [0x1805870f8], r12d
mov dword [rbx + rcx*4], eax
movabs rcx, 0x7239b21a38f536ba
mov rax, qword [rsp + 0xe0]
mov qword [0x1805dd278], rcx
mov qword [0x180587120], rax
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x1802fa715
mov eax, dword [0x1805b11f0]
mov qword [rsp + 0xe0], r12
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0xe0]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rdi
mov dword [0x1805870e8], 1
call fcn.1801e4620
movsxd rcx, dword [0x180568868]
mov edx, dword [rax]
mov ecx, dword [rbx + rcx*4]
call fcn.180300420
inc r15d
add r14, 8
cmp r15d, 0x1b3e
jb 0x1802fa380
movaps xmm6, xmmword [rsp + 0xa0]
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret