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

Disassembly:
mov dword [rsp + 8], ecx
push rbp
push rbx
lea rbp, [rsp - 0x328]
sub rsp, 0x428
mov ebx, ecx
lea rcx, [rbp + 0x270]
call fcn.1800505f0
mov r8, qword [rax]
mov rdx, qword [r8 + 8]
cmp byte [rdx + 0x19], 0
jne 0x18000c357
cmp dword [rdx + 0x20], ebx
jae 0x18000c34b
mov rdx, qword [rdx + 0x10]
jmp 0x18000c351
mov r8, rdx
mov rdx, qword [rdx]
cmp byte [rdx + 0x19], 0
je 0x18000c340
cmp byte [r8 + 0x19], 0
jne 0x18000c387
cmp ebx, dword [r8 + 0x20]
jb 0x18000c387
mov rdx, rax
mov rcx, rax
call fcn.180053410
lea rdx, [rbp + 0x340]
call fcn.180050510
mov eax, dword [rax]
add rsp, 0x428
pop rbx
pop rbp
ret
mov qword [rsp + 0x420], rsi
mov rdx, rax
mov qword [rsp + 0x418], rdi
mov rcx, rax
mov qword [rsp + 0x410], r12
mov qword [rsp + 0x408], r13
mov qword [rsp + 0x400], r14
mov qword [rsp + 0x3f8], r15
movaps xmmword [rsp + 0x3e0], xmm6
movaps xmmword [rsp + 0x3d0], xmm7
call fcn.180053410
call fcn.1800080c0
mov rcx, rax
mov qword [rbp + 0x1b8], rax
mov rbx, rax
call fcn.180007fa0
mov rsi, rax
mov qword [rbp + 0x1b0], rax
xor r12d, r12d
lea rdx, [rbp - 0x50]
mov qword [rbp + 0x358], r12
movabs rax, 0xd09d33e2268f99d6
mov qword [rbp + 0x348], rax
movabs r13, 0x1a7911437ad82004
mov rcx, qword [rbp + 0x348]
movabs rax, 0x7f1e4e2d13b94d6b
mov qword [rbp - 0x50], rcx
mov edi, r12d
mov qword [rbp + 0x348], rax
movabs rax, 0x982c012be3c3288d
mov rcx, qword [rbp + 0x348]
mov qword [rbp - 0x48], rcx
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x40], rax
movabs rax, 0x7ddf7f493f4be9aa
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x38], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x348], r13
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x118], rax
movabs rax, 0xfa41645890a277f9
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x120], rax
movabs rax, 0x7ddf7f494c2e80c6
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rbp - 0x50]
movdqa xmm1, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp + 0x110]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x128], rax
pxor xmm1, xmmword [rbp + 0x120]
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x350], r12d
movdqa xmmword [rbp - 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x358]
mov rcx, rbx
call rax
cmp qword [rbp + 0x358], rdi
jbe 0x18000d94c
mov ebx, r12d
mov qword [rbp + 0x78], rbx
mov rax, qword [rsi + rbx*8]
movabs rcx, 0xdd9d33e2268f99d6
movabs rdx, 0x6e1c761c1fbf4169
mov dword [rbp + 0x348], r12d
movabs r8, 0x991e172bf1ce14a6
movabs r9, 0x7ddf7f493840f5a9
mov r15d, r12d
mov r14, qword [rax]
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x70], rax
mov qword [rsp + 0x30], rdx
lea rdx, [rbp - 0x70]
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x68], rax
mov qword [rsp + 0x30], r8
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x60], rax
mov qword [rsp + 0x30], r9
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x58], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf8], rax
movabs rax, 0xfa41645890a277f9
movdqa xmm0, xmmword [rbp + 0xf0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x100], rax
movabs rax, 0x7ddf7f494c2e80c6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
movdqa xmm1, xmmword [rbp - 0x60]
pxor xmm0, xmmword [rbp - 0x70]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x108], rax
pxor xmm1, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x60], xmm1
mov qword [rbp - 0x10], r14
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
test rax, rax
je 0x18000d7ff
movabs rdi, 0xb4c2439245bdf5bf
nop dword [rax]
mov rdx, qword [r14]
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 0xf
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18000c690
lea rcx, [rsp + 0x48]
call fcn.180051810
movabs rax, 0xb4c2439229d19191
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov qword [rbp], rax
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x38]
mov qword [rbp + 8], rax
mov qword [rsp + 0x38], rdi
mov rdi, 0xffffffffffffffff
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x220], rax
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x38]
movdqa xmm0, xmmword [rbp]
mov qword [rbp + 0x228], rax
lea rax, [rbp]
pxor xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rbp], xmm0
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x18000c710
mov rcx, qword [rsp + 0x60]
lea rsi, [rsp + 0x48]
mov r13, qword [rsp + 0x48]
cmp rcx, 0x10
mov r12, qword [rsp + 0x58]
cmovae rsi, r13
cmp rdi, r12
ja 0x18000c7b8
test rdi, rdi
jne 0x18000c746
xor ebx, ebx
jmp 0x18000c7c8
movsx r15d, byte [rbp]
lea r8, [r12 + 1]
mov r14, rsi
mov edx, r15d
sub r14, rdi
mov rcx, rsi
add r8, r14
sub r8, rsi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x18000c7a8
nop
mov r8, rdi
lea rdx, [rbp]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000cac4
inc rbx
lea r8, [r12 + 1]
add r8, r14
mov edx, r15d
sub r8, rbx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x18000c770
mov rcx, qword [rsp + 0x60]
mov r14, qword [rbp - 0x10]
mov r15d, dword [rbp + 0x348]
mov rbx, 0xffffffffffffffff
cmp r12, rbx
jb 0x18000da5f
mov rax, r12
mov edx, 4
sub rax, rbx
cmp rax, rdx
cmovb rdx, rax
cmp rcx, 0x10
lea rax, [rsp + 0x48]
cmovae rax, r13
sub r12, rdx
mov qword [rsp + 0x58], r12
sub r12, rbx
lea rcx, [rax + rbx]
lea r8, [r12 + 1]
add rdx, rcx
call sub.VCRUNTIME140.dll_memmove
movabs rcx, 0x7ddf7f494c2e80c6
lea rdx, [rbp + 0x170]
movabs rax, 0xdd9d33e2268f99d6
movabs rsi, 0xb4c2439245bdf5bf
mov qword [rsp + 0x38], rax
movabs rdi, 0x1a7911437ad82004
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x170], rax
movabs rax, 0x6e1c761c1fbf4169
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x178], rax
movabs rax, 0xfa41172bf1ce14a6
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x180], rax
mov qword [rsp + 0x38], rcx
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x188], rax
mov qword [rsp + 0x38], rsi
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x230], rax
mov qword [rsp + 0x38], rdi
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x238], rax
movabs rax, 0xfa41645890a277f9
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x38], rcx
mov qword [rbp + 0x240], rax
mov rax, qword [rsp + 0x38]
movdqa xmm0, xmmword [rbp + 0x170]
movdqa xmm1, xmmword [rbp + 0x180]
pxor xmm0, xmmword [rbp + 0x230]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x248], rax
pxor xmm1, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x180], xmm1
movdqa xmmword [rbp + 0x170], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
movsxd rdx, r15d
mov rcx, r14
call rax
mov qword [rsp + 0x38], rax
mov r8, 0xffffffffffffffff
mov qword [rbp + 0x130], 0
mov qword [rbp + 0x140], 0
mov r12, qword [rax + 0x10]
mov r14, qword [rax + 0x18]
mov qword [rbp + 0x148], 0xf
inc r8
cmp byte [r14 + r8], 0
jne 0x18000c952
mov rdx, r14
lea rcx, [rbp + 0x130]
call fcn.180051810
cmp qword [rbp + 0x140], 0
mov rdx, qword [rbp + 0x148]
sete bl
cmp rdx, 0x10
jb 0x18000c9b7
mov rcx, qword [rbp + 0x130]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000c9b2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000da52
call fcn.1800f8c40
xor r8d, r8d
mov qword [rbp + 0x148], 0xf
mov qword [rbp + 0x140], r8
mov byte [rbp + 0x130], r8b
test bl, bl
je 0x18000cc44
movabs rax, 0xb4c2439245bdcf85
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x90], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x98], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x1e0], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0x90]
mov r15, qword [rsp + 0x58]
mov qword [rbp + 0x1e8], rax
lea rax, [rbp + 0x90]
pxor xmm0, xmmword [rbp + 0x1e0]
movdqa xmmword [rbp + 0x90], xmm0
inc rbx
cmp byte [rax + rbx], r8b
jne 0x18000ca54
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, rbx
jb 0x18000da6b
cmp qword [rsp + 0x60], 0x10
lea r13, [rsp + 0x48]
lea r14, [rbx + r15]
mov qword [rbp + 0x10], r8
cmovae r13, qword [rsp + 0x48]
lea rsi, [rbp + 0x10]
mov edi, 0xf
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r8
cmp r14, rdi
jbe 0x18000cb38
mov rdi, r14
or rdi, 0xf
cmp rdi, rcx
jbe 0x18000cadc
mov rdi, rcx
movabs rax, 0x8000000000000027
jmp 0x18000cb03
mov rcx, qword [rsp + 0x60]
sub rbx, rsi
mov r14, qword [rbp - 0x10]
mov r15d, dword [rbp + 0x348]
jmp 0x18000c7bf
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18000cb22
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000da65
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x18000d998
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18000cb34
test rcx, rcx
je 0x18000cb31
call fcn.1800f8c04
mov rsi, rax
jmp 0x18000cb34
mov rsi, r8
mov qword [rbp + 0x10], rsi
mov r8, r15
mov qword [rbp + 0x20], r14
mov rdx, r13
mov qword [rbp + 0x28], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r15]
mov r8, rbx
lea rdx, [rbp + 0x90]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r14], 0
nop dword [rax]
inc r8
cmp byte [r12 + r8], 0
jne 0x18000cb70
mov rdx, r12
lea rcx, [rbp + 0x10]
call fcn.180051970
xor r14d, r14d
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
mov rdx, qword [rsp + 0x60]
movups xmmword [rbp + 0x290], xmm6
movups xmmword [rbp + 0x2a0], xmm7
cmp rdx, 0x10
jb 0x18000cbea
mov rcx, qword [rsp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000cbe5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d998
call fcn.1800f8c40
mov rdx, qword [rbp + 0x28]
movups xmmword [rsp + 0x48], xmm6
movups xmmword [rsp + 0x58], xmm7
cmp rdx, 0x10
jb 0x18000cc2f
mov rcx, qword [rbp + 0x10]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000cc2a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d998
call fcn.1800f8c40
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], r14b
jmp 0x18000d08b
movabs rcx, 0xb4c2439245bdcf85
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdi
mov qword [rbp + 0x1f0], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x1f8], rax
movdqa xmm0, xmmword [rbp + 0x1f0]
pxor xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0xb0], xmm0
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa0], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa8], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x200], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0xa0]
mov rdx, qword [rsp + 0x58]
mov qword [rbp + 0x208], rax
lea rax, [rbp + 0xa0]
pxor xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0xa0], xmm0
mov qword [rsp + 0x30], rdx
nop
inc rbx
cmp byte [rax + rbx], r8b
jne 0x18000cd20
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, rdx
cmp rax, rbx
jb 0x18000da59
cmp qword [rsp + 0x60], 0x10
lea r13, [rsp + 0x48]
lea r15, [rbx + rdx]
mov qword [rbp + 0x30], r8
cmovae r13, qword [rsp + 0x48]
lea rsi, [rbp + 0x30]
mov edi, 0xf
mov qword [rbp + 0x40], r8
mov qword [rbp + 0x48], r8
cmp r15, rdi
jbe 0x18000cdf6
mov rdi, r15
or rdi, 0xf
cmp rdi, rcx
jbe 0x18000cd90
mov rdi, rcx
movabs rax, 0x8000000000000027
jmp 0x18000cdb7
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18000cddb
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000da71
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x18000d99f
mov rdx, qword [rsp + 0x30]
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18000cdf2
test rcx, rcx
je 0x18000cdef
call fcn.1800f8c04
mov rdx, qword [rsp + 0x30]
mov rsi, rax
jmp 0x18000cdf2
mov rsi, r8
mov qword [rbp + 0x30], rsi
mov r8, rdx
mov qword [rbp + 0x40], r15
mov rdx, r13
mov qword [rbp + 0x48], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0xa0]
add rcx, rsi
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r15], 0
nop
inc r8
cmp byte [r14 + r8], 0
jne 0x18000ce30
mov rdx, r14
lea rcx, [rbp + 0x30]
call fcn.180051970
xor r14d, r14d
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x1c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1d0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
lea rax, [rbp + 0xb0]
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r14b
jne 0x18000ce80
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x1c0]
call fcn.180051970
mov qword [rbp - 0x30], r14
mov rdi, 0xffffffffffffffff
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
nop dword [rax]
inc rdi
cmp byte [r12 + rdi], r14b
jne 0x18000ced0
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x18000cf1c
cmp rdx, 0x10
lea rax, [rcx + rdi]
lea rbx, [rbp - 0x30]
mov qword [rbp - 0x20], rax
cmovae rbx, qword [rbp - 0x30]
mov r8, rdi
add rbx, rcx
mov rdx, r12
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbp - 0x30]
mov byte [rbx + rdi], r14b
jmp 0x18000cf30
mov r9, r12
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x30]
call fcn.180053810
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
mov rdx, qword [rsp + 0x60]
movups xmmword [rbp + 0x2b0], xmm6
movups xmmword [rbp + 0x2c0], xmm7
cmp rdx, 0x10
jb 0x18000cf91
mov rcx, qword [rsp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000cf8c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d99f
call fcn.1800f8c40
mov rdx, qword [rbp - 0x18]
movups xmmword [rsp + 0x48], xmm6
movups xmmword [rsp + 0x58], xmm7
cmp rdx, 0x10
jb 0x18000cfd6
mov rcx, qword [rbp - 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000cfd1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d99f
call fcn.1800f8c40
mov rdx, qword [rbp + 0x1d8]
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], r14b
cmp rdx, 0x10
jb 0x18000d027
mov rcx, qword [rbp + 0x1c0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d022
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d99f
call fcn.1800f8c40
mov rdx, qword [rbp + 0x48]
mov qword [rbp + 0x1d0], r14
mov qword [rbp + 0x1d8], 0xf
mov byte [rbp + 0x1c0], r14b
cmp rdx, 0x10
jb 0x18000d07b
mov rcx, qword [rbp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d076
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d99f
call fcn.1800f8c40
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], r14b
mov qword [rbp + 0x70], r14
lea rdx, [rsp + 0x70]
movabs rax, 0xd79d33e2268f99d6
movabs rsi, 0x7ddf7f494c2e80c6
mov qword [rsp + 0x30], rax
movabs rdi, 0xb4c2439245bdf5bf
mov rax, qword [rsp + 0x30]
movabs r13, 0x1a7911437ad82004
mov qword [rsp + 0x70], rax
movabs r12, 0xfa41645890a277f9
movabs rax, 0x6e1c761c09ab4168
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x78], rax
movabs rax, 0xfa320034f5cb11a6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x78], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov qword [rbp + 0xd0], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rax
mov qword [rsp + 0x30], r12
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe0], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
pxor xmm0, xmmword [rbp + 0xd0]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0xe8], rax
pxor xmm1, xmmword [rbp + 0xe0]
movdqa xmmword [rbp - 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x38]
lea rdx, [rbp + 0x70]
call rax
mov qword [rsp + 0x30], rax
mov rbx, rax
test rax, rax
je 0x18000d699
nop word [rax + rax]
movabs rax, 0xd29d33e2268f99d6
lea rdx, [rbp + 0x190]
mov qword [rsp + 0x40], rax
movabs rax, 0x6e1c761c1eb4456d
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x190], rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x198], rax
movabs rax, 0xfa41643dfdc319a6
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x1a0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x1a8], rax
mov qword [rsp + 0x40], rdi
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], r13
mov qword [rbp + 0x250], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x258], rax
mov qword [rsp + 0x40], r12
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x260], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [rbp + 0x190]
movdqa xmm1, xmmword [rbp + 0x1a0]
pxor xmm0, xmmword [rbp + 0x250]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x268], rax
pxor xmm1, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x1a0], xmm1
movdqa xmmword [rbp + 0x190], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov r15, rax
mov rbx, 0xffffffffffffffff
movabs rax, 0xb4c2439245bdcf85
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0xc0], rcx
mov qword [rsp + 0x40], r13
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0xc8], rcx
mov qword [rsp + 0x40], rdi
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], r13
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [rbp + 0xc0]
mov r13, qword [rsp + 0x58]
mov qword [rbp + 0x218], rax
lea rax, [rbp + 0xc0]
mov qword [rbp + 0x210], rcx
pxor xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0xc0], xmm0
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18000d320
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r13
cmp rax, rbx
jb 0x18000da7d
cmp qword [rsp + 0x60], 0x10
lea r12, [rsp + 0x48]
mov qword [rbp + 0x50], r14
lea rsi, [rbp + 0x50]
cmovae r12, qword [rsp + 0x48]
mov edi, 0xf
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], r14
lea r14, [rbx + r13]
cmp r14, rdi
jbe 0x18000d3e7
mov rdi, r14
or rdi, 0xf
cmp rdi, rcx
jbe 0x18000d38c
mov rdi, rcx
movabs rax, 0x8000000000000027
jmp 0x18000d3b3
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18000d3d2
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000da77
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x18000d9a6
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18000d3e3
test rcx, rcx
je 0x18000d3e1
call fcn.1800f8c04
mov rsi, rax
jmp 0x18000d3e3
xor esi, esi
mov qword [rbp + 0x50], rsi
mov r8, r13
mov qword [rbp + 0x60], r14
mov rdx, r12
mov qword [rbp + 0x68], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r13]
mov r8, rbx
lea rdx, [rbp + 0xc0]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r14], 0
nop dword [rax]
inc r8
cmp byte [r15 + r8], 0
jne 0x18000d420
mov rdx, r15
lea rcx, [rbp + 0x50]
call fcn.180051970
xor r14d, r14d
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
mov rdx, qword [rbp + 0x68]
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm1
cmp rdx, 0x10
jb 0x18000d498
mov rcx, qword [rbp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d493
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d9a6
call fcn.1800f8c40
mov rsi, qword [rbp + 0x168]
lea rax, [rbp + 0x150]
mov rdi, qword [rbp + 0x150]
cmp rsi, 0x10
mov qword [rbp + 0x60], r14
mov rcx, 0xffffffffffffffff
cmovae rax, rdi
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], r14b
nop dword [rax]
inc rcx
cmp byte [rax + rcx], r14b
jne 0x18000d4d0
cmp rsi, 0x10
lea r8, [rbp + 0x150]
mov eax, 0xffffffff
cmovae r8, rdi
test ecx, ecx
je 0x18000d523
mov r9d, ecx
lea rsi, [0x180119310]
nop dword [rax + rax]
movsx edx, byte [r8]
lea r8, [r8 + 1]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
xor eax, dword [rsi + rcx*4]
sub r9, 1
jne 0x18000d500
mov rsi, qword [rbp + 0x168]
not eax
cmp eax, dword [rbp + 0x340]
je 0x18000d9ad
cmp rsi, 0x10
jb 0x18000d568
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18000d560
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000da52
mov rcx, rdi
call fcn.1800f8c40
mov qword [rbp + 0x160], r14
lea rdx, [rsp + 0x70]
mov qword [rbp + 0x168], 0xf
movabs rax, 0xd79d33e2268f99d6
mov byte [rbp + 0x150], r14b
movabs rsi, 0x7ddf7f494c2e80c6
mov qword [rsp + 0x30], rax
movabs rdi, 0xb4c2439245bdf5bf
mov rax, qword [rsp + 0x30]
movabs r13, 0x1a7911437ad82004
mov qword [rsp + 0x70], rax
movabs r12, 0xfa41645890a277f9
movabs rax, 0x6e1c761c09ab4168
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x78], rax
movabs rax, 0xfa320034f5cb11a6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x78], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov qword [rbp + 0xd0], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rax
mov qword [rsp + 0x30], r12
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xe0], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
pxor xmm0, xmmword [rbp + 0xd0]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0xe8], rax
pxor xmm1, xmmword [rbp + 0xe0]
movdqa xmmword [rbp - 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x38]
lea rdx, [rbp + 0x70]
call rax
mov qword [rsp + 0x30], rax
mov rbx, rax
test rax, rax
jne 0x18000d1b0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x18000d6d6
mov rcx, qword [rsp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d6d1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000da52
call fcn.1800f8c40
mov r15d, dword [rbp + 0x348]
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x58], r14
movabs rax, 0xdd9d33e2268f99d6
mov qword [rsp + 0x60], 0xf
inc r15d
mov byte [rsp + 0x48], 0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x70], rax
movabs rax, 0x6e1c761c1fbf4169
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x68], rax
movabs rax, 0x991e172bf1ce14a6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x60], rax
movabs rax, 0x7ddf7f493840f5a9
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x58], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov qword [rbp + 0xf0], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xf8], rax
movdqa xmm0, xmmword [rbp + 0xf0]
mov qword [rsp + 0x30], r12
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
movdqa xmm1, xmmword [rbp - 0x60]
pxor xmm0, xmmword [rbp - 0x70]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x108], rax
pxor xmm1, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x60], xmm1
mov dword [rbp + 0x348], r15d
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, qword [rbp - 0x10]
mov rcx, r14
call rax
movsxd rcx, r15d
mov r12d, 0
cmp rcx, rax
jb 0x18000c670
mov rbx, qword [rbp + 0x78]
mov edi, dword [rbp + 0x350]
mov rsi, qword [rbp + 0x1b0]
mov qword [rbp + 0x358], r12
lea rdx, [rbp - 0x50]
movabs rax, 0xd09d33e2268f99d6
inc edi
mov qword [rbp + 0x348], rax
inc rbx
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x50], rax
movabs rax, 0x7f1e4e2d13b94d6b
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x48], rax
movabs rax, 0x982c012be3c3288d
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x40], rax
movabs rax, 0x7ddf7f493f4be9aa
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x38], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x348], r13
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x118], rax
movabs rax, 0xfa41645890a277f9
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x120], rax
movabs rax, 0x7ddf7f494c2e80c6
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rbp - 0x50]
movdqa xmm1, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp + 0x110]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x128], rax
pxor xmm1, xmmword [rbp + 0x120]
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x350], edi
mov qword [rbp + 0x78], rbx
movdqa xmmword [rbp - 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x1b8]
lea rdx, [rbp + 0x358]
call rax
movsxd rax, edi
cmp rax, qword [rbp + 0x358]
jb 0x18000c548
xor eax, eax
movaps xmm6, xmmword [rsp + 0x3e0]
mov r15, qword [rsp + 0x3f8]
mov r14, qword [rsp + 0x400]
mov r13, qword [rsp + 0x408]
mov r12, qword [rsp + 0x410]
mov rdi, qword [rsp + 0x418]
mov rsi, qword [rsp + 0x420]
movaps xmm7, xmmword [rsp + 0x3d0]
add rsp, 0x428
pop rbx
pop rbp
ret
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, qword [rsp + 0x30]
call fcn.180007e90
mov ecx, dword [rbp + 0x340]
lea r8, [rbp + 0x80]
mov ebx, eax
lea rdx, [rbp + 0x280]
mov dword [rbp + 0x84], ebx
mov dword [rbp + 0x80], ecx
call fcn.1800520c0
cmp rsi, 0x10
jb 0x18000da11
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18000da09
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000da52
mov rcx, rdi
call fcn.1800f8c40
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x18000da4a
mov rcx, qword [rsp + 0x48]
inc rdx
mov r8, rcx
cmp rdx, 0x1000
jb 0x18000da45
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x18000da52
call fcn.1800f8c40
mov rax, rbx
jmp 0x18000d94e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800065c0
int3
call fcn.180051d90
int3
call fcn.1800063e0
int3
call fcn.1800065c0
int3
call fcn.1800063e0
int3
call fcn.1800063e0
int3
call fcn.1800065c0
int3