Function at 0x180061f00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x1800e9040]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, r8
mov r14, rdx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], r8
mov rax, qword [0x1800f9470]
mov qword [rsp + 0x28], rax
mov r10, rdx
mov rbx, qword [rdx + 0x18]
cmp rbx, 0xf
jbe 0x180061f4f
mov r10, qword [rdx]
mov r15, qword [rdx + 0x10]
xor r9d, r9d
lea r11, [r15 + r10]
cmp r10, r11
je 0x180061f94
nop
movzx r8d, byte [r10]
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
inc r10
cmp r10, r11
jne 0x180061f60
lea ecx, [r9 + r9*8]
mov eax, ecx
shr eax, 0xb
xor ecx, eax
imul r13d, ecx, 0x8001
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 0x13
jb 0x180062409
mov r12, r14
cmp rbx, 0xf
jbe 0x180061fcc
mov r12, qword [r14]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x40], xmm1
lea rbp, [r15 + 0x13]
mov ebx, 0xf
lea rsi, [rsp + 0x30]
cmp rbp, rbx
jbe 0x18006206a
mov rbx, rbp
or rbx, 0xf
cmp rbx, rcx
jbe 0x18006202c
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180094b90
test rax, rax
je 0x180062144
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x180062065
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180062054
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006240f
jmp 0x18006200d
test rcx, rcx
je 0x180062063
call fcn.180094b90
mov rsi, rax
jmp 0x180062065
xor esi, esi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], rbx
movups xmm0, xmmword [str.platform:_textures_]
movups xmmword [rsi], xmm0
movzx eax, word [0x1800d2f48]
mov word [rsi + 0x10], ax
movzx eax, byte [0x1800d2f4a]
mov byte [rsi + 0x12], al
lea rcx, [rsi + 0x13]
mov r8, r15
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rbp], 0
lea r10, [rsp + 0x30]
mov r11, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
cmp rsi, 0xf
cmova r10, r11
xor r9d, r9d
mov rbx, qword [rsp + 0x40]
add rbx, r10
cmp r10, rbx
je 0x180062104
nop dword [rax]
movzx r8d, byte [r10]
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
inc r10
cmp r10, rbx
jne 0x1800620d0
lea ecx, [r9 + r9*8]
mov eax, ecx
shr eax, 0xb
xor ecx, eax
imul ebx, ecx, 0x8001
mov dword [rsp + 0x24], ebx
cmp rsi, 0xf
jbe 0x180062153
lea rdx, [rsi + 1]
mov rax, r11
cmp rdx, 0x1000
jb 0x18006214b
add rdx, 0x27
mov r11, qword [r11 - 8]
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18006214b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r11
call fcn.1800950f0
mov edx, r13d
mov rcx, qword [rsp + 0x28]
call fcn.180061e80
test rax, rax
je 0x1800621de
movzx r13d, word [rax + 0x28]
movzx ebp, r13w
test r13w, r13w
je 0x1800621de
mov r12, qword [rax + 0x30]
test r12, r12
je 0x1800621d4
cmp bp, r13w
jge 0x1800621d4
movsx rax, bp
mov r15, qword [r12 + rax*8]
test r15, r15
je 0x1800621d4
mov rdx, qword [r15 + 0x28]
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x1800621a0
mov rsi, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800621ba
mov rcx, qword [rdi]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800621d4
cmp rsi, rbx
jb 0x1800621d4
jbe 0x180062243
sub bp, 1
jne 0x180062178
mov ebx, dword [rsp + 0x24]
mov r8, qword [rsp + 0x28]
mov r10d, dword [r8 + 0x48]
mov edx, r10d
test r10d, r10d
je 0x180062344
mov r9, qword [r8 + 0x40]
test r9, r9
je 0x180062239
cmp edx, r10d
jae 0x180062239
mov ecx, edx
movzx eax, byte [r9 + rcx]
shr al, 7
not al
test al, 1
je 0x180062239
lea rcx, [rcx + rcx*2]
mov rax, qword [r8 + 0x38]
lea r8, [rax + rcx*8]
mov rax, qword [r8]
test rax, rax
je 0x180062234
test r8, r8
je 0x180062234
cmp dword [r8 + 0xc], ebx
je 0x1800622d0
mov r8, qword [rsp + 0x28]
add edx, 0xffffffff
jne 0x1800621f7
jmp 0x180062344
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x18006227d
inc rdx
cmp rdx, 0x1000
mov rcx, qword [r14]
jb 0x180062278
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800623fb
mov rcx, r8
call fcn.1800950f0
xor ebx, ebx
mov byte [r14], bl
mov qword [r14 + 0x18], 0xf
mov qword [r14 + 0x10], rbx
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1800622c8
inc rdx
cmp rdx, 0x1000
mov rcx, qword [rdi]
jb 0x1800622c3
add rdx, 0x27
mov rax, qword [rcx - 8]
sub rcx, rax
add rcx, 0xfffffffffffffff8
cmp rcx, 0x1f
ja 0x180062402
mov rcx, rax
call fcn.1800950f0
mov rax, r15
jmp 0x1800623c7
movzx r13d, word [rax + 0x28]
movzx ebp, r13w
test r13w, r13w
je 0x180062344
mov r12, qword [rax + 0x30]
test r12, r12
je 0x18006233e
cmp bp, r13w
jge 0x18006233e
movsx rax, bp
mov r15, qword [r12 + rax*8]
test r15, r15
je 0x18006233e
mov rdx, qword [r15 + 0x28]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], 0
jne 0x180062306
mov rsi, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180062320
mov rcx, qword [rdi]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18006233e
cmp rsi, rbx
jb 0x18006233e
jbe 0x180062243
sub bp, 1
jne 0x1800622e3
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x18006237e
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x180062379
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800623fb
mov rcx, r8
call fcn.1800950f0
xor ebx, ebx
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], 0xf
mov byte [r14], bl
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1800623c5
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x1800623c0
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180062402
mov rcx, r8
call fcn.1800950f0
xor eax, eax
mov byte [rdi], 0
mov qword [rdi + 0x18], 0xf
mov qword [rdi + 0x10], rbx
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180094b70
mov rbx, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.180002b20
int3
call fcn.180002900
int3