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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x2f0]
sub rsp, 0x3f0
call fcn.180011340
mov rcx, rax
mov qword [rbp + 0x1b8], rax
mov rbx, rax
call fcn.180011220
mov rdi, rax
mov qword [rbp + 0x1c0], rax
xor r12d, r12d
lea rdx, [rsp + 0x70]
mov qword [rbp + 0x340], r12
movabs rax, 0x6f60d99e78d9243e
mov qword [rbp + 0x330], rax
movabs r13, 0x10b7c67f439e4a34
mov rcx, qword [rbp + 0x330]
movabs rax, 0x75d099112aff275b
mov qword [rsp + 0x70], rcx
movabs r14, 0x5d75fabdd3d3bc16
mov qword [rbp + 0x330], rax
mov esi, r12d
mov rcx, qword [rbp + 0x330]
movabs rax, 0xe3d1cebfac1f6015
mov qword [rsp + 0x78], rcx
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp - 0x80], rax
movabs rax, 0x5d75fabda0b6d57a
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp - 0x78], rax
movabs rax, 0xb3fa9ee1beb4857
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x330], r13
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x28], rax
movabs rax, 0x81bcabccdf7e3f61
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x330], r14
mov rax, qword [rbp + 0x330]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rbp + 0x20]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x38], rax
xorps xmm1, xmmword [rbp + 0x30]
movdqa xmmword [rbp - 0x80], xmm1
mov dword [rbp + 0x338], r12d
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x340]
mov rcx, rbx
call rax
cmp qword [rbp + 0x340], rsi
jbe 0x18001bc7f
mov qword [rsp + 0x3e8], r15
mov ebx, r12d
movaps xmmword [rsp + 0x3d0], xmm6
movabs r15, 0x7fffffffffffffff
movaps xmmword [rsp + 0x3c0], xmm7
mov qword [rbp + 0x18], rbx
mov rax, qword [rdi + rbx*8]
movabs rcx, 0x6260d99e78d9243e
movabs rdx, 0x64d2a12026f92b59
mov dword [rbp + 0x330], r12d
movabs r8, 0xe2e3d8bfbe125c3e
movabs r9, 0x5d75fabda7bdc979
mov rdi, qword [rax]
mov qword [rbp + 0x348], rcx
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x70], rax
mov qword [rbp + 0x348], rdx
lea rdx, [rbp - 0x70]
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x348], r8
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x348], r9
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x58], rax
movabs rax, 0xb3fa9ee1beb4857
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0x348], r13
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0xb8], rax
movabs rax, 0x81bcabccdf7e3f61
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rbp - 0x70]
movdqa xmm1, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp + 0xb0]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0xc8], rax
xorps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp - 0x60], xmm1
mov qword [rbp + 0x1b0], rdi
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rdi
call rax
test rax, rax
je 0x18001bb0f
mov rbx, r12
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], r12
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x40], r12
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18001a930
lea rcx, [rsp + 0x28]
call fcn.180008440
movabs rax, 0x6260d99e78d9243e
lea rdx, [rbp + 0x130]
mov qword [rbp + 0x348], rax
movabs rsi, 0xb3fa9ee1beb4857
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x130], rax
movabs rax, 0x64d2a12026f92b59
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x138], rax
movabs rax, 0x81bcd8bfbe125c3e
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x348], rsi
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x348], r13
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x218], rax
movabs rax, 0x81bcabccdf7e3f61
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rbp + 0x130]
movdqa xmm1, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0x210]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x228], rax
xorps xmm1, xmmword [rbp + 0x220]
movdqa xmmword [rbp + 0x140], xmm1
movdqa xmmword [rbp + 0x130], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, rbx
mov rcx, rdi
call rax
xorps xmm0, xmm0
mov qword [rbp + 0x10], rax
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r12
mov r8, 0xffffffffffffffff
mov rcx, qword [rax + 0x10]
mov r14, qword [rax + 0x18]
mov qword [rbp + 0x348], rcx
mov qword [rbp + 0x128], r12
nop word [rax + rax]
inc r8
cmp byte [r14 + r8], 0
jne 0x18001aaa0
mov rdx, r14
lea rcx, [rbp + 0x110]
call fcn.180008440
cmp qword [rbp + 0x120], 0
mov rdx, qword [rbp + 0x128]
sete bl
cmp rdx, 0x10
jb 0x18001ab05
mov rcx, qword [rbp + 0x110]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ab00
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc60
call fcn.18010addc
mov qword [rbp + 0x120], r12
mov qword [rbp + 0x128], 0xf
mov byte [rbp + 0x110], 0
test bl, bl
je 0x18001ad76
movabs rax, 0xb3fa9ee1beb726d
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x70], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x78], rax
mov qword [rsp + 0x20], rsi
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1d0], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1d8], rax
lea rax, [rbp + 0x70]
movdqa xmm0, xmmword [rbp + 0x1d0]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0x70], xmm0
nop word [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18001ab90
mov r14, qword [rsp + 0x38]
mov rax, r15
sub rax, r14
cmp rax, rbx
jb 0x18001bc9d
cmp qword [rsp + 0x40], 0x10
lea r13, [rsp + 0x28]
mov r15, qword [rsp + 0x28]
lea rsi, [rbp - 0x30]
mov qword [rbp - 0x20], r12
mov edi, 0xf
mov qword [rbp - 0x18], r12
cmovae r13, r15
lea r12, [rbx + r14]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
cmp r12, rdi
jbe 0x18001ac6a
mov rdi, r12
movabs rax, 0x7fffffffffffffff
or rdi, 0xf
cmp rdi, rax
jbe 0x18001ac0f
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18001ac36
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18001ac55
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001bc97
mov rcx, rax
call fcn.18010ada0
test rax, rax
je 0x18001bc4b
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18001ac66
test rcx, rcx
je 0x18001ac61
call fcn.18010ada0
jmp 0x18001ac63
xor eax, eax
mov rsi, rax
mov qword [rbp - 0x30], rsi
mov r8, r14
mov qword [rbp - 0x20], r12
mov rdx, r13
mov qword [rbp - 0x18], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r14]
mov r8, rbx
lea rdx, [rbp + 0x70]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x348]
mov r8, 0xffffffffffffffff
mov byte [rsi + r12], 0
inc r8
cmp byte [rax + r8], 0
jne 0x18001aca3
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.18005f1c0
xor r12d, r12d
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rax, qword [rsp + 0x40]
movups xmmword [rbp + 0x280], xmm6
movups xmmword [rbp + 0x290], xmm7
cmp rax, 0x10
jb 0x18001ad1c
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x18001ad14
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc4b
mov rcx, r15
call fcn.18010addc
mov rdx, qword [rbp - 0x18]
movups xmmword [rsp + 0x28], xmm6
movups xmmword [rsp + 0x38], xmm7
cmp rdx, 0x10
jb 0x18001ad61
mov rcx, qword [rbp - 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001ad5c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc4b
call fcn.18010addc
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], r12b
jmp 0x18001b1b3
movabs rcx, 0xb3fa9ee1beb726d
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x90], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x98], rax
mov qword [rsp + 0x20], rsi
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], r13
mov qword [rbp + 0x1e0], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1e8], rax
movdqa xmm0, xmmword [rbp + 0x1e0]
xorps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x90], xmm0
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x80], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x88], rax
mov qword [rsp + 0x20], rsi
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x200], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
movdqa xmm0, xmmword [rbp + 0x80]
mov qword [rbp + 0x208], rax
lea rax, [rbp + 0x80]
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0x80], xmm0
inc rbx
cmp byte [rax + rbx], 0
jne 0x18001ae44
mov rax, r15
mov r15, qword [rsp + 0x38]
sub rax, r15
cmp rax, rbx
jb 0x18001bc91
cmp qword [rsp + 0x40], 0x10
lea r13, [rsp + 0x28]
mov rax, qword [rsp + 0x28]
lea rsi, [rbp - 0x50]
mov qword [rbp - 0x40], r12
mov edi, 0xf
mov qword [rbp - 0x38], r12
cmovae r13, rax
lea r12, [rbx + r15]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
cmp r12, rdi
jbe 0x18001af23
mov rdi, r12
movabs rax, 0x7fffffffffffffff
or rdi, 0xf
cmp rdi, rax
jbe 0x18001aec8
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18001aeef
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18001af0e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001bca3
mov rcx, rax
call fcn.18010ada0
test rax, rax
je 0x18001bc52
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18001af1f
test rcx, rcx
je 0x18001af1a
call fcn.18010ada0
jmp 0x18001af1c
xor eax, eax
mov rsi, rax
mov qword [rbp - 0x50], rsi
mov r8, r15
mov qword [rbp - 0x40], r12
mov rdx, r13
mov qword [rbp - 0x38], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r15]
mov r8, rbx
lea rdx, [rbp + 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r12], 0
nop dword [rax + rax]
inc r8
cmp byte [r14 + r8], 0
jne 0x18001af60
mov rdx, r14
lea rcx, [rbp - 0x50]
call fcn.18005f1c0
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], r12
mov r8, 0xffffffffffffffff
mov qword [rbp + 0x108], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xf0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x100], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
lea rax, [rbp + 0x90]
inc r8
cmp byte [rax + r8], r12b
jne 0x18001afc3
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0xf0]
call fcn.18005f1c0
mov qword [rbp + 0xe0], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe8], r12
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rax, qword [rbp + 0x348]
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x18001b030
mov rdx, rax
lea rcx, [rbp + 0xd0]
call fcn.18005f1c0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rax, qword [rsp + 0x40]
movups xmmword [rbp + 0x2a0], xmm6
movups xmmword [rbp + 0x2b0], xmm7
cmp rax, 0x10
jb 0x18001b0aa
mov rcx, qword [rsp + 0x20]
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b0a5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc52
call fcn.18010addc
mov rdx, qword [rbp + 0xe8]
movups xmmword [rsp + 0x28], xmm6
movups xmmword [rsp + 0x38], xmm7
cmp rdx, 0x10
jb 0x18001b0f5
mov rcx, qword [rbp + 0xd0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b0f0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc52
call fcn.18010addc
mov rdx, qword [rbp + 0x108]
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], 0xf
mov byte [rbp + 0xd0], r12b
cmp rdx, 0x10
jb 0x18001b14f
mov rcx, qword [rbp + 0xf0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b14a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc52
call fcn.18010addc
mov rdx, qword [rbp - 0x38]
mov qword [rbp + 0x100], r12
mov qword [rbp + 0x108], 0xf
mov byte [rbp + 0xf0], r12b
cmp rdx, 0x10
jb 0x18001b1a3
mov rcx, qword [rbp - 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b19e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc52
call fcn.18010addc
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], r12b
mov qword [rbp + 0x40], r12
lea rdx, [rsp + 0x50]
movabs rax, 0x6860d99e78d9243e
movabs r14, 0x5d75fabdd3d3bc16
mov qword [rbp + 0x348], rax
movabs rdi, 0xb3fa9ee1beb4857
mov rax, qword [rbp + 0x348]
movabs r13, 0x10b7c67f439e4a34
mov qword [rsp + 0x50], rax
movabs r15, 0x81bcabccdf7e3f61
movabs rax, 0x64d2a12030ed2b58
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x58], rax
movabs rax, 0x81cfcfa0ba17593e
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x68], rax
mov qword [rbp + 0x348], rdi
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x348], r13
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x348], r15
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x50]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x68], rax
xorps xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x10]
lea rdx, [rbp + 0x40]
call rax
mov qword [rbp + 0x348], rax
mov rbx, rax
test rax, rax
je 0x18001b98e
movabs rax, 0x6d60d99e78d9243e
lea rdx, [rbp + 0x150]
mov qword [rsp + 0x20], rax
movabs rax, 0x64d2a12027f22f5d
mov rcx, qword [rsp + 0x20]
mov qword [rbp + 0x150], rcx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x158], rax
movabs rax, 0x81bcaba9b21f513e
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x160], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x168], rax
mov qword [rsp + 0x20], rdi
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], r13
mov qword [rbp + 0x230], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x238], rax
mov qword [rsp + 0x20], r15
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x240], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
movdqa xmm0, xmmword [rbp + 0x150]
movdqa xmm1, xmmword [rbp + 0x160]
xorps xmm0, xmmword [rbp + 0x230]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x248], rax
xorps xmm1, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x160], xmm1
movdqa xmmword [rbp + 0x150], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov r13, rax
mov rbx, 0xffffffffffffffff
movabs rax, 0xb3fa9ee1beb726d
mov qword [rsp + 0x20], rax
movabs rax, 0x10b7c67f439e4a34
mov rcx, qword [rsp + 0x20]
mov qword [rbp + 0xa0], rcx
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x20]
mov qword [rbp + 0xa8], rcx
mov qword [rsp + 0x20], rdi
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
movdqa xmm0, xmmword [rbp + 0xa0]
mov qword [rbp + 0x1f8], rax
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x1f0], rcx
xorps xmm0, xmmword [rbp + 0x1f0]
movdqa xmmword [rbp + 0xa0], xmm0
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18001b450
mov r14, qword [rsp + 0x38]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, rbx
jb 0x18001bcb5
cmp qword [rsp + 0x40], 0x10
lea r12, [rsp + 0x28]
lea r15, [rbx + r14]
mov edi, 0xf
cmovae r12, qword [rsp + 0x28]
lea rsi, [rbp - 0x10]
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp], rax
mov qword [rbp + 8], rax
movups xmmword [rbp - 0x10], xmm0
cmp r15, rdi
jbe 0x18001b521
mov rdi, r15
or rdi, 0xf
cmp rdi, rcx
jbe 0x18001b4ca
movabs rax, 0x8000000000000000
mov rdi, rcx
add rax, 0x27
jmp 0x18001b4f1
cmp rdi, 0x16
mov ecx, 0x16
cmovb rdi, rcx
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18001b510
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001bca9
mov rcx, rax
call fcn.18010ada0
test rax, rax
je 0x18001bc59
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18001b51d
test rcx, rcx
je 0x18001b51a
call fcn.18010ada0
mov rsi, rax
mov qword [rbp - 0x10], rsi
mov r8, r14
mov qword [rbp], r15
mov rdx, r12
mov qword [rbp + 8], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r14]
mov r8, rbx
lea rdx, [rbp + 0xa0]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r15], 0
inc r8
cmp byte [r8 + r13], 0
jne 0x18001b556
mov rdx, r13
lea rcx, [rbp - 0x10]
call fcn.18005f1c0
xor r12d, r12d
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rdx, qword [rbp + 8]
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm1
cmp rdx, 0x10
jb 0x18001b5ce
mov rcx, qword [rbp - 0x10]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b5c9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc59
call fcn.18010addc
mov qword [rbp], r12
lea rdx, [rbp + 0x170]
mov qword [rbp + 8], 0xf
movabs rcx, 0x5d75fabdd3d3bc16
mov byte [rbp - 0x10], r12b
movabs rax, 0x6d60d99e78d9243e
mov qword [rsp + 0x20], rax
movabs r13, 0x10b7c67f439e4a34
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x170], rax
movabs rax, 0x64d2a12027f22f5d
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x178], rax
movabs rax, 0x81c8cebfb918503e
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x180], rax
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x188], rax
movabs rax, 0xb3fa9ee1beb4857
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x250], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x258], rax
movabs rax, 0x81bcabccdf7e3f61
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x20], rcx
mov qword [rbp + 0x260], rax
mov rax, qword [rsp + 0x20]
movdqa xmm0, xmmword [rbp + 0x170]
movdqa xmm1, xmmword [rbp + 0x180]
xorps xmm0, xmmword [rbp + 0x250]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x268], rax
xorps xmm1, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x180], xmm1
movdqa xmmword [rbp + 0x170], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x348]
call rax
mov r14, qword [rbp + 0x1a8]
lea rdx, [rbp + 0x190]
mov rsi, qword [rbp + 0x190]
cmp r14, 0x10
mov r15d, eax
mov rcx, 0xffffffffffffffff
cmovae rdx, rsi
nop
inc rcx
cmp byte [rdx + rcx], r12b
jne 0x18001b720
cmp r14, 0x10
lea rdx, [rbp + 0x190]
mov ebx, 0xffffffff
cmovae rdx, rsi
test ecx, ecx
je 0x18001b76f
mov r8d, ecx
lea r12, [0x1801db000]
nop dword [rax + rax]
movsx ecx, byte [rdx]
lea rdx, [rdx + 1]
mov eax, ebx
shr ebx, 8
xor rcx, rax
movzx eax, cl
xor ebx, dword [r12 + rax*4]
sub r8, 1
jne 0x18001b750
xor r12d, r12d
mov rdi, qword [0x1803beb20]
not ebx
mov dword [rsp + 0x58], r12d
mov rcx, rdi
mov rax, qword [rdi + 8]
mov qword [rsp + 0x50], rax
cmp byte [rax + 0x19], 0
jne 0x18001b7b9
nop
mov qword [rsp + 0x50], rax
cmp dword [rax + 0x20], ebx
jae 0x18001b7a5
mov rax, qword [rax + 0x10]
mov dword [rsp + 0x58], r12d
jmp 0x18001b7b3
mov rcx, rax
mov dword [rsp + 0x58], 1
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18001b790
cmp byte [rcx + 0x19], 0
jne 0x18001b7c4
cmp ebx, dword [rcx + 0x20]
jae 0x18001b81f
movabs rax, 0x555555555555555
cmp qword [0x1803beb28], rax
je 0x18001bcaf
mov ecx, 0x30
call fcn.18010ada0
movups xmm0, xmmword [rsp + 0x50]
mov r8, rax
lea rdx, [rbp + 0x270]
lea rcx, [0x1803beb20]
mov dword [rax + 0x20], ebx
mov qword [rax + 0x28], r15
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movaps xmmword [rbp + 0x270], xmm0
call fcn.180061710
cmp r14, 0x10
jb 0x18001b856
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18001b84e
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc60
mov rcx, rsi
call fcn.18010addc
mov qword [rbp + 0x1a0], r12
lea rdx, [rsp + 0x50]
mov qword [rbp + 0x1a8], 0xf
movabs rax, 0x6860d99e78d9243e
mov byte [rbp + 0x190], 0
movabs r14, 0x5d75fabdd3d3bc16
mov qword [rbp + 0x348], rax
movabs rdi, 0xb3fa9ee1beb4857
mov rax, qword [rbp + 0x348]
movabs r15, 0x81bcabccdf7e3f61
mov qword [rsp + 0x50], rax
movabs rax, 0x64d2a12030ed2b58
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x58], rax
movabs rax, 0x81cfcfa0ba17593e
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x68], rax
mov qword [rbp + 0x348], rdi
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x348], r13
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x348], r15
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x50]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x68], rax
xorps xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x10]
lea rdx, [rbp + 0x40]
call rax
mov qword [rbp + 0x348], rax
mov rbx, rax
test rax, rax
jne 0x18001b2e0
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x18001b9cb
mov rcx, qword [rsp + 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b9c6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001bc60
call fcn.18010addc
mov esi, dword [rbp + 0x330]
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x38], r12
movabs rax, 0x6260d99e78d9243e
mov qword [rsp + 0x40], 0xf
inc esi
mov byte [rsp + 0x28], 0
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x70], rax
movabs rax, 0x64d2a12026f92b59
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x68], rax
movabs rax, 0xe2e3d8bfbe125c3e
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x60], rax
movabs rax, 0x5d75fabda7bdc979
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp - 0x58], rax
mov qword [rbp + 0x348], rdi
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0x348], r13
mov qword [rbp + 0xb0], rax
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0x348], r15
mov rax, qword [rbp + 0x348]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0x348], r14
mov rax, qword [rbp + 0x348]
movdqa xmm0, xmmword [rbp - 0x70]
movdqa xmm1, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp + 0xb0]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0xc8], rax
xorps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp - 0x60], xmm1
mov dword [rbp + 0x330], esi
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, qword [rbp + 0x1b0]
mov rcx, rdi
movsxd rbx, esi
call rax
movabs r15, 0x7fffffffffffffff
cmp rbx, rax
jb 0x18001a910
mov rbx, qword [rbp + 0x18]
mov esi, dword [rbp + 0x338]
mov qword [rbp + 0x340], r12
lea rdx, [rsp + 0x70]
movabs rax, 0x6f60d99e78d9243e
inc esi
mov qword [rbp + 0x330], rax
inc rbx
mov rax, qword [rbp + 0x330]
mov qword [rsp + 0x70], rax
movabs rax, 0x75d099112aff275b
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rsp + 0x78], rax
movabs rax, 0xe3d1cebfac1f6015
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp - 0x80], rax
movabs rax, 0x5d75fabda0b6d57a
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp - 0x78], rax
movabs rax, 0xb3fa9ee1beb4857
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x330], r13
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x28], rax
movabs rax, 0x81bcabccdf7e3f61
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x330], r14
mov rax, qword [rbp + 0x330]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rbp + 0x20]
mov rcx, qword [0x1803beaa0]
mov qword [rbp + 0x38], rax
xorps xmm1, xmmword [rbp + 0x30]
movdqa xmmword [rbp - 0x80], xmm1
mov dword [rbp + 0x338], esi
mov qword [rbp + 0x18], rbx
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x1b8]
lea rdx, [rbp + 0x340]
call rax
movsxd rax, esi
cmp rax, qword [rbp + 0x340]
jae 0x18001bc67
mov rdi, qword [rbp + 0x1c0]
jmp 0x18001a7d3
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
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movaps xmm6, xmmword [rsp + 0x3d0]
mov r15, qword [rsp + 0x3e8]
movaps xmm7, xmmword [rsp + 0x3c0]
add rsp, 0x3f0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.180008030
int3
call fcn.180007f20
int3
call fcn.180008030
int3
call fcn.180007f20
int3
call fcn.180007f20
int3
call fcn.180010780
int3
call fcn.180008030
int3