Function at 0x1800025b0
Capabilities:
Encode data using xor
Hash data with crc32
Link many functions at runtime

Disassembly:
mov dword [rsp + 8], ecx
push rbp
lea rbp, [rsp - 0x180]
sub rsp, 0x280
lea rcx, [rsp + 0x70]
mov dword [rbp + 0x190], 0xc566d10
call fcn.1800238b0
mov edx, 0xc566d10
mov rcx, rax
call fcn.180023a10
test al, al
je 0x180002600
lea rdx, [rbp + 0x190]
call fcn.1800237d0
mov eax, dword [rax]
add rsp, 0x280
pop rbp
ret
mov qword [rsp + 0x278], rbx
mov qword [rsp + 0x270], rsi
mov qword [rsp + 0x268], rdi
mov qword [rsp + 0x260], r12
mov qword [rsp + 0x258], r13
mov qword [rsp + 0x250], r14
mov qword [rsp + 0x248], r15
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm7
movaps xmmword [rsp + 0x210], xmm8
movaps xmmword [rsp + 0x200], xmm9
movaps xmmword [rsp + 0x1f0], xmm10
movaps xmmword [rsp + 0x1e0], xmm11
movaps xmmword [rsp + 0x1d0], xmm12
call fcn.1800023c0
mov rcx, rax
mov qword [rbp + 0x60], rax
mov rbx, rax
call fcn.1800021c0
mov esi, dword [0x180095010]
xor r14d, r14d
movdqa xmm9, xmmword [0x18008cb80]
xor edi, edi
movdqa xmm12, xmmword [0x18008cba0]
mov r15, rax
movdqa xmm10, xmmword [0x18008cb70]
movdqa xmm8, xmmword [0x18008d270]
movdqa xmm11, xmmword [0x18008cb20]
mov qword [rbp + 0x68], rax
movups xmm0, xmmword [str.T_vYKLbZP___e_3]
mov eax, dword [0x18008b8e0]
xor r8d, r8d
mov dword [rbp + 0x88], eax
movzx eax, byte [0x18008b8e4]
mov qword [rbp + 0x28], rdi
mov dword [rbp + 0x1a0], r14d
mov qword [rbp + 0x20], 0
mov byte [rbp + 0x8c], al
movups xmmword [rbp + 0x70], xmm0
movsd xmm0, qword [0x18008b8d8]
movsd qword [rbp + 0x80], xmm0
cmp esi, 2
jl 0x18000282b
movdqa xmmword [rsp + 0x70], xmm12
lea rcx, [rbp + 0x74]
mov edx, dword [rsp + 0x70]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm11
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm11
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x18
jl 0x180002730
cmp r8d, 0x1d
jge 0x180002874
movsxd rax, r8d
lea r9, [rbp + 0x70]
add r9, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x1d
jl 0x180002840
mov rcx, qword [0x1801aeb40]
lea rdx, [rbp + 0x70]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, [rbp + 0x20]
mov rcx, rbx
call rax
movsxd rax, r14d
cmp rax, qword [rbp + 0x20]
jae 0x180003aa2
mov rax, qword [r15 + rdi*8]
xor edi, edi
mov ebx, edi
mov r13, qword [rax]
mov qword [rbp + 0x58], r13
mov eax, dword [0x18008b960]
mov r8d, edi
mov dword [rbp + 0x18], eax
movzx eax, byte [0x18008b964]
mov dword [rbp + 0x198], ebx
mov byte [rbp + 0x1c], al
movups xmm0, xmmword [str.T_vYKLbWR_]
movups xmmword [rbp], xmm0
movsd xmm0, qword [0x18008b958]
movsd qword [rbp + 0x10], xmm0
cmp esi, 2
jl 0x1800029fb
movdqa xmmword [rsp + 0x70], xmm12
lea rcx, [rbp + 4]
mov edx, dword [rsp + 0x70]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm11
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm11
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x18
jl 0x180002900
cmp r8d, 0x1d
jge 0x180002a44
movsxd rax, r8d
lea r9, [rbp]
add r9, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x1d
jl 0x180002a10
mov rcx, qword [0x1801aeb40]
lea rdx, [rbp]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, r13
movsxd r12, ebx
call rax
cmp r12, rax
jae 0x1800039ca
mov rdx, qword [r13]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rdi
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x48], rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x180002a83
lea rcx, [rsp + 0x30]
call fcn.180023ff0
mov r15, qword [rsp + 0x48]
lea rdi, [rsp + 0x30]
mov r14, qword [rsp + 0x30]
cmp r15, 0xf
mov rbx, qword [rsp + 0x40]
cmova rdi, r14
cmp rbx, 4
jb 0x180002b12
lea rsi, [rbx + rdi]
mov edx, 0x2e
lea r8, [rsi - 3]
mov rcx, rdi
sub r8, rdi
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x180002b0c
nop dword [rax]
cmp dword [r9], 0x6c6c642e
je 0x180002e1b
inc r9
lea r8, [rsi - 3]
sub r8, r9
mov rcx, r9
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
jne 0x180002ae0
mov esi, dword [0x180095010]
mov r9, 0xffffffffffffffff
cmp rbx, r9
jb 0x180003b22
mov rax, rbx
lea rcx, [rsp + 0x30]
sub rax, r9
mov edx, 4
cmp rax, rdx
cmovb rdx, rax
cmp r15, 0xf
cmova rcx, r14
sub rbx, rdx
add rcx, r9
mov r8, rbx
sub r8, r9
add rdx, rcx
inc r8
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [0x18008b6e0]
xor edi, edi
mov dword [rbp + 0x10], eax
mov r8d, edi
movzx eax, word [0x18008b6e4]
mov word [rbp + 0x14], ax
movzx eax, byte [0x18008b6e6]
mov byte [rbp + 0x16], al
mov qword [rsp + 0x40], rbx
movups xmm0, xmmword [0x18008b6d0]
movups xmmword [rbp], xmm0
cmp esi, 2
jl 0x180002cab
movdqa xmmword [rsp + 0x70], xmm12
lea rcx, [rbp + 4]
mov edx, dword [rsp + 0x70]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm11
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm11
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x180002bb0
cmp r8d, 0x17
jge 0x180002cf4
movsxd rax, r8d
lea r9, [rbp]
add r9, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x17
jl 0x180002cc0
mov rcx, qword [0x1801aeb40]
lea rdx, [rbp]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rdx, r12
mov rcx, r13
call rax
xorps xmm0, xmm0
mov qword [rbp + 0x1a8], rax
mov r13, rax
mov qword [rsp + 0x60], rdi
movups xmmword [rsp + 0x50], xmm0
mov r14, qword [rax + 0x10]
mov r8, 0xffffffffffffffff
mov rsi, qword [rax + 0x18]
mov qword [rsp + 0x68], rdi
nop dword [rax + rax]
inc r8
cmp byte [rsi + r8], dil
jne 0x180002d40
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.180023ff0
cmp qword [rsp + 0x60], rdi
mov rdx, qword [rsp + 0x68]
sete bl
cmp rdx, 0xf
jbe 0x180002d9b
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002d96
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003a9b
call fcn.18005bb1c
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
test bl, bl
je 0x180002fca
mov rsi, qword [rsp + 0x40]
sub rax, rsi
cmp rax, 2
jb 0x180003b2e
cmp qword [rsp + 0x48], 0xf
lea r12, [rsp + 0x30]
lea r15, [rsi + 2]
mov qword [rsp + 0x60], rdi
cmova r12, qword [rsp + 0x30]
mov ebx, 0xf
mov qword [rsp + 0x68], rdi
xorps xmm0, xmm0
lea rdi, [rsp + 0x50]
movups xmmword [rsp + 0x50], xmm0
cmp r15, rbx
jbe 0x180002e85
mov rbx, r15
or rbx, 0xf
cmp rbx, rcx
jbe 0x180002e29
movabs rax, 0x8000000000000000
mov rbx, rcx
add rax, 0x27
jmp 0x180002e59
mov esi, dword [0x180095010]
sub r9, rdi
jmp 0x180002b19
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x180002e43
xor edi, edi
jmp 0x180002e80
cmp rcx, 0x1000
jb 0x180002e78
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180003b28
mov rcx, rax
call fcn.18005bae0
test rax, rax
je 0x1800039e8
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180002e80
call fcn.18005bae0
mov rdi, rax
mov qword [rsp + 0x50], rdi
mov r8, rsi
mov qword [rsp + 0x60], r15
mov rdx, r12
mov qword [rsp + 0x68], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + rsi], 0x3a3a
mov byte [rdi + r15], 0
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp byte [r14 + rdi], 0
jne 0x180002eb0
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x180002f03
cmp rdx, 0xf
lea rax, [rdi + rcx]
lea rbx, [rsp + 0x50]
mov qword [rsp + 0x60], rax
cmova rbx, qword [rsp + 0x50]
mov r8, rdi
add rbx, rcx
mov rdx, r14
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rsp + 0x50]
mov byte [rdi + rbx], 0
jmp 0x180002f18
mov r9, r14
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.180024100
movups xmm6, xmmword [rax]
xor ebx, ebx
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov byte [rax], bl
mov qword [rax + 0x18], 0xf
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x180002f6c
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002f67
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039e8
call fcn.18005bb1c
mov rdx, qword [rsp + 0x68]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm7
cmp rdx, 0xf
jbe 0x180002fb3
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002fae
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039e8
call fcn.18005bb1c
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], bl
jmp 0x180003377
mov r15, qword [rsp + 0x40]
sub rax, r15
cmp rax, 2
jb 0x180003b46
cmp qword [rsp + 0x48], 0xf
lea r13, [rsp + 0x30]
lea r12, [r15 + 2]
mov qword [rbp - 0x70], rdi
cmova r13, qword [rsp + 0x30]
mov ebx, 0xf
mov qword [rbp - 0x68], rdi
xorps xmm0, xmm0
lea rdi, [rbp - 0x80]
movups xmmword [rbp - 0x80], xmm0
cmp r12, rbx
jbe 0x180003088
mov rbx, r12
or rbx, 0xf
cmp rbx, rcx
jbe 0x18000302d
movabs rax, 0x8000000000000000
mov rbx, rcx
add rax, 0x27
jmp 0x18000305d
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x180003047
xor edi, edi
jmp 0x180003084
cmp rcx, 0x1000
jb 0x18000307c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180003b34
mov rcx, rax
call fcn.18005bae0
test rax, rax
je 0x1800039ef
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180003084
call fcn.18005bae0
mov rdi, rax
mov qword [rbp - 0x80], rdi
mov r8, r15
mov qword [rbp - 0x70], r12
mov rdx, r13
mov qword [rbp - 0x68], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov r13d, 0x3a3a
mov word [rdi + r15], r13w
mov byte [rdi + r12], 0
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rsi + rdi], 0
jne 0x1800030b5
mov rdx, qword [rbp - 0x68]
mov rcx, qword [rbp - 0x70]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x180003101
cmp rdx, 0xf
lea rax, [rdi + rcx]
lea rbx, [rbp - 0x80]
mov qword [rbp - 0x70], rax
cmova rbx, qword [rbp - 0x80]
mov r8, rdi
add rbx, rcx
mov rdx, rsi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbp - 0x80]
mov byte [rdi + rbx], 0
jmp 0x180003115
mov r9, rsi
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.180024100
xor ebx, ebx
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x18000317b
lea rax, [rcx + 2]
cmp rdx, 0xf
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x20]
cmova rax, qword [rbp - 0x20]
mov word [rax + rcx], r13w
mov byte [rax + rcx + 2], bl
lea rax, [rbp - 0x20]
jmp 0x180003199
lea r9, [0x18005e794]
mov qword [rsp + 0x20], 2
mov edx, 2
lea rcx, [rbp - 0x20]
call fcn.180024100
mov qword [rbp - 0x30], rbx
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x28], rbx
mov rdi, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
nop dword [rax]
inc rdi
cmp byte [r14 + rdi], bl
jne 0x1800031d0
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x18000321e
cmp rdx, 0xf
lea rax, [rdi + rcx]
lea rbx, [rbp - 0x40]
mov qword [rbp - 0x30], rax
cmova rbx, qword [rbp - 0x40]
mov r8, rdi
add rbx, rcx
mov rdx, r14
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rbx], 0
lea rax, [rbp - 0x40]
xor ebx, ebx
jmp 0x180003232
mov r9, r14
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x40]
call fcn.180024100
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x180003285
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003280
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039ef
call fcn.18005bb1c
mov rdx, qword [rbp - 0x28]
movups xmmword [rsp + 0x30], xmm6
movups xmmword [rsp + 0x40], xmm7
cmp rdx, 0xf
jbe 0x1800032ca
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800032c5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039ef
call fcn.18005bb1c
mov rdx, qword [rbp - 8]
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
cmp rdx, 0xf
jbe 0x180003315
mov rcx, qword [rbp - 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003310
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039ef
call fcn.18005bb1c
mov rdx, qword [rbp - 0x68]
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
cmp rdx, 0xf
jbe 0x180003360
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000335b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039ef
call fcn.18005bb1c
mov r13, qword [rbp + 0x1a8]
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
mov qword [rbp + 0x48], rbx
nop dword [rax + rax]
cmp byte [0x18008b9ff], 0
movups xmm0, xmmword [str.T_vYKLb_S_21]
mov esi, dword [0x180095010]
movups xmmword [rbp + 0x8d], xmm0
movsd xmm0, qword [0x18008b9f8]
movsd qword [rbp + 0x9d], xmm0
je 0x180003504
cmp esi, 2
jl 0x1800034c5
movdqa xmmword [rsp + 0x70], xmm12
lea rcx, [rbp + 0x91]
mov r8d, dword [rsp + 0x70]
mov edx, ebx
nop
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm11
add edx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm11
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp edx, 0x18
jl 0x1800033d0
jmp 0x180003504
lea r9, [rbp + 0x8d]
mov r8d, ebx
nop
mov eax, 0x8fb823ef
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x18
jl 0x1800034d0
mov rcx, qword [0x1801aeb40]
lea rdx, [rbp + 0x8d]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, [rbp + 0x48]
mov rcx, r13
call rax
mov qword [rbp + 0x50], rax
mov r13, rax
test rax, rax
je 0x180003967
cmp byte [0x18008b385], 0
mov ecx, dword [0x18008b380]
movups xmm0, xmmword [str.T_vYKLbXV__]
mov dword [rbp + 0x40], ecx
movzx ecx, word [0x18008b384]
movups xmmword [rbp + 0x30], xmm0
mov word [rbp + 0x44], cx
je 0x1800036c4
mov r8d, ebx
cmp esi, 2
jl 0x18000367b
movdqa xmmword [rsp + 0x70], xmm12
lea rcx, [rbp + 0x34]
mov edx, dword [rsp + 0x70]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm11
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm11
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm8
pmuldq xmm1, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x180003580
cmp r8d, 0x16
jge 0x1800036c4
movsxd rax, r8d
lea r9, [rbp + 0x30]
add r9, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x37
xor byte [r9 - 1], al
cmp r8d, 0x16
jl 0x180003690
mov rcx, qword [0x1801aeb40]
lea rdx, [rbp + 0x30]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, r13
call rax
mov r15, qword [rsp + 0x40]
mov rsi, rax
movabs rax, 0x7fffffffffffffff
mov rcx, rax
sub rcx, r15
cmp rcx, 2
jb 0x180003b40
cmp qword [rsp + 0x48], 0xf
lea r12, [rsp + 0x30]
mov qword [rbp - 0x50], rbx
lea r14, [r15 + 2]
cmova r12, qword [rsp + 0x30]
lea rdi, [rbp - 0x60]
mov qword [rbp - 0x48], rbx
xorps xmm0, xmm0
mov ebx, 0xf
movups xmmword [rbp - 0x60], xmm0
cmp r14, rbx
jbe 0x1800037a8
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x18000374d
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18000377d
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x180003767
xor edi, edi
jmp 0x1800037a4
cmp rcx, 0x1000
jb 0x18000379c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180003b3a
mov rcx, rax
call fcn.18005bae0
test rax, rax
je 0x1800039f6
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1800037a4
call fcn.18005bae0
mov rdi, rax
mov qword [rbp - 0x60], rdi
mov r8, r15
mov qword [rbp - 0x50], r14
mov rdx, r12
mov qword [rbp - 0x48], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + r15], 0x3a3a
mov byte [rdi + r14], 0
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rsi + rdi], 0
jne 0x1800037d1
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x18000381d
cmp rdx, 0xf
lea rax, [rdi + rcx]
lea rbx, [rbp - 0x60]
mov qword [rbp - 0x50], rax
cmova rbx, qword [rbp - 0x60]
mov r8, rdi
add rbx, rcx
mov rdx, rsi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbp - 0x60]
mov byte [rbx + rdi], 0
jmp 0x180003831
mov r9, rsi
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180024100
movups xmm7, xmmword [rax]
xor ebx, ebx
movups xmm6, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov byte [rax], bl
mov qword [rax + 0x18], 0xf
mov rdx, qword [rbp - 0x48]
movups xmmword [rbp + 0xa8], xmm7
movups xmmword [rbp + 0xb8], xmm6
cmp rdx, 0xf
jbe 0x180003891
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000388c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800039f6
call fcn.18005bb1c
psrldq xmm6, 8
lea rax, [rbp + 0xa8]
movq rsi, xmm6
mov qword [rbp - 0x50], rbx
cmp rsi, 0xf
mov qword [rbp - 0x48], 0xf
movq rdi, xmm7
mov byte [rbp - 0x60], bl
cmova rax, rdi
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], bl
jne 0x1800038c5
cmp rsi, 0xf
lea r8, [rbp + 0xa8]
mov eax, 0xffffffff
cmova r8, rdi
test ecx, ecx
je 0x180003912
mov r9d, ecx
lea r13, [0x180086dc0]
nop
movsx edx, byte [r8]
lea r8, [r8 + 1]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
xor eax, dword [r13 + rcx*4]
sub r9, 1
jne 0x1800038f0
mov r13, qword [rbp + 0x50]
not eax
cmp eax, dword [rbp + 0x190]
je 0x1800039fd
mov r13, qword [rbp + 0x1a8]
cmp rsi, 0xf
jbe 0x180003380
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18000395a
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003a9b
mov rcx, rdi
call fcn.18005bb1c
jmp 0x180003380
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x1800039a4
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000399f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003a9b
call fcn.18005bb1c
mov r13, qword [rbp + 0x58]
mov qword [rsp + 0x40], rbx
mov ebx, dword [rbp + 0x198]
inc ebx
mov qword [rsp + 0x48], 0xf
xor edi, edi
mov byte [rsp + 0x30], 0
jmp 0x1800028aa
mov r14d, dword [rbp + 0x1a0]
mov rdi, qword [rbp + 0x28]
inc r14d
mov rbx, qword [rbp + 0x60]
inc rdi
mov r15, qword [rbp + 0x68]
jmp 0x1800026c8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r13
call fcn.180001fe0
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x198]
mov ebx, eax
lea rdx, [rsp + 0x70]
mov dword [rbp + 0x19c], ebx
mov dword [rbp + 0x198], ecx
call fcn.180023b70
cmp rsi, 0xf
jbe 0x180003a5d
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180003a55
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003a9b
mov rcx, rdi
call fcn.18005bb1c
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x180003a96
mov rcx, qword [rsp + 0x30]
inc rdx
mov r8, rcx
cmp rdx, 0x1000
jb 0x180003a91
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x180003a9b
call fcn.18005bb1c
mov rax, rbx
jmp 0x180003aa4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xor eax, eax
movaps xmm11, xmmword [rsp + 0x1e0]
movaps xmm10, xmmword [rsp + 0x1f0]
movaps xmm9, xmmword [rsp + 0x200]
movaps xmm8, xmmword [rsp + 0x210]
movaps xmm7, xmmword [rsp + 0x220]
movaps xmm6, xmmword [rsp + 0x230]
mov r15, qword [rsp + 0x248]
mov r14, qword [rsp + 0x250]
mov r13, qword [rsp + 0x258]
mov r12, qword [rsp + 0x260]
mov rdi, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x278]
movaps xmm12, xmmword [rsp + 0x1d0]
add rsp, 0x280
pop rbp
ret
call fcn.180001ee0
int3
call fcn.180001c30
int3
call fcn.180001cd0
int3
call fcn.180001c30
int3
call fcn.180001c30
int3
call fcn.180001cd0
int3
call fcn.180001cd0
int3