Function at 0x1800118f0
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 - 0x300]
sub rsp, 0x400
call fcn.1800080c0
mov rcx, rax
mov qword [rbp + 0x1a8], rax
mov rbx, rax
call fcn.180007fa0
mov rdi, rax
mov qword [rbp + 0x1b0], rax
xor r12d, r12d
lea rdx, [rbp - 0x80]
mov qword [rbp + 0x350], r12
movabs rax, 0xd09d33e2268f99d6
mov qword [rbp + 0x340], rax
movabs r13, 0x1a7911437ad82004
mov rcx, qword [rbp + 0x340]
movabs rax, 0x7f1e4e2d13b94d6b
mov qword [rbp - 0x80], rcx
movabs r14, 0x7ddf7f494c2e80c6
mov qword [rbp + 0x340], rax
mov esi, r12d
mov rcx, qword [rbp + 0x340]
movabs rax, 0x982c012be3c3288d
mov qword [rbp - 0x78], rcx
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x70], rax
movabs rax, 0x7ddf7f493f4be9aa
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x68], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0x340], r13
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xe8], rax
movabs rax, 0xfa41645890a277f9
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0x340], r14
mov rax, qword [rbp + 0x340]
movdqa xmm0, xmmword [rbp - 0x80]
movdqa xmm1, xmmword [rbp - 0x70]
pxor xmm0, xmmword [rbp + 0xe0]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0xf8], rax
pxor xmm1, xmmword [rbp + 0xf0]
movdqa xmmword [rbp - 0x70], xmm1
mov dword [rbp + 0x348], r12d
movdqa xmmword [rbp - 0x80], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x350]
mov rcx, rbx
call rax
cmp qword [rbp + 0x350], rsi
jbe 0x180012f62
mov qword [rsp + 0x3f8], r15
mov ebx, r12d
movaps xmmword [rsp + 0x3e0], xmm6
movabs r15, 0x7fffffffffffffff
movaps xmmword [rsp + 0x3d0], xmm7
mov qword [rbp + 0x48], rbx
mov rax, qword [rdi + rbx*8]
movabs rcx, 0xdd9d33e2268f99d6
movabs rdx, 0x6e1c761c1fbf4169
mov dword [rbp + 0x340], r12d
movabs r8, 0x991e172bf1ce14a6
movabs r9, 0x7ddf7f493840f5a9
mov rdi, qword [rax]
mov qword [rbp + 0x358], rcx
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x358], rdx
lea rdx, [rbp - 0x60]
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x58], rax
mov qword [rbp + 0x358], r8
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x50], rax
mov qword [rbp + 0x358], r9
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x48], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x358], r13
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x88], rax
movabs rax, 0xfa41645890a277f9
movdqa xmm0, xmmword [rbp + 0x80]
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
movdqa xmm1, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x60]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x98], rax
pxor xmm1, xmmword [rbp + 0x90]
movdqa xmmword [rbp - 0x50], xmm1
mov qword [rbp + 0x1a0], rdi
movdqa xmmword [rbp - 0x60], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rdi
call rax
test rax, rax
je 0x180012de3
mov rbx, r12
nop word [rax + rax]
mov rdx, qword [rdi]
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], 0xf
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180011c00
lea rcx, [rsp + 0x38]
call fcn.180051810
movabs rax, 0xdd9d33e2268f99d6
lea rdx, [rbp + 0x120]
mov qword [rbp + 0x358], rax
movabs rsi, 0xb4c2439245bdf5bf
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x120], rax
movabs rax, 0x6e1c761c1fbf4169
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x128], rax
movabs rax, 0xfa41172bf1ce14a6
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x358], rsi
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x358], r13
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x228], rax
movabs rax, 0xfa41645890a277f9
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x230], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
movdqa xmm0, xmmword [rbp + 0x120]
movdqa xmm1, xmmword [rbp + 0x130]
pxor xmm0, xmmword [rbp + 0x220]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x238], rax
pxor xmm1, xmmword [rbp + 0x230]
movdqa xmmword [rbp + 0x130], xmm1
movdqa xmmword [rbp + 0x120], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, rbx
mov rcx, rdi
call rax
mov qword [rbp + 0x40], rax
mov r8, 0xffffffffffffffff
mov qword [rbp + 0x100], r12
mov qword [rbp + 0x110], r12
mov rcx, qword [rax + 0x10]
mov r14, qword [rax + 0x18]
mov qword [rbp + 0x358], rcx
mov qword [rbp + 0x118], 0xf
nop dword [rax]
inc r8
cmp byte [r14 + r8], 0
jne 0x180011d70
mov rdx, r14
lea rcx, [rbp + 0x100]
call fcn.180051810
cmp qword [rbp + 0x110], 0
mov rdx, qword [rbp + 0x118]
sete bl
cmp rdx, 0x10
jb 0x180011dd5
mov rcx, qword [rbp + 0x100]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180011dd0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f43
call fcn.1800f8c40
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], 0xf
mov byte [rbp + 0x100], 0
test bl, bl
je 0x180012053
movabs rax, 0xb4c2439245bdcf85
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xa8], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x1e0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0xa0]
mov qword [rbp + 0x1e8], rax
lea rax, [rbp + 0xa0]
pxor xmm0, xmmword [rbp + 0x1e0]
movdqa xmmword [rbp + 0xa0], xmm0
nop word [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x180011e70
mov rax, r15
mov r15, qword [rsp + 0x48]
sub rax, r15
cmp rax, rbx
jb 0x180012f80
cmp qword [rsp + 0x50], 0x10
lea r13, [rsp + 0x38]
mov r14, qword [rsp + 0x38]
lea rsi, [rbp + 0x20]
mov qword [rbp + 0x20], r12
mov edi, 0xf
mov qword [rbp + 0x30], r12
cmovae r13, r14
mov qword [rbp + 0x38], r12
lea r12, [rbx + r15]
cmp r12, rdi
jbe 0x180011f43
mov rdi, r12
movabs rax, 0x7fffffffffffffff
or rdi, 0xf
cmp rdi, rax
jbe 0x180011ee8
mov rdi, rax
movabs rax, 0x8000000000000027
jmp 0x180011f0f
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x180011f2e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180012f7a
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x180012f2e
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x180011f3f
test rcx, rcx
je 0x180011f3a
call fcn.1800f8c04
jmp 0x180011f3c
xor eax, eax
mov rsi, rax
mov qword [rbp + 0x20], rsi
mov r8, r15
mov qword [rbp + 0x30], 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 + 0xa0]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x358]
mov r8, 0xffffffffffffffff
mov byte [rsi + r12], 0
nop
inc r8
cmp byte [rax + r8], 0
jne 0x180011f80
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.180051970
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 + 0x50]
movups xmmword [rbp + 0x290], xmm6
movups xmmword [rbp + 0x2a0], xmm7
cmp rax, 0x10
jb 0x180011ff9
lea rdx, [rax + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x180011ff1
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f2e
mov rcx, r14
call fcn.1800f8c40
mov rdx, qword [rbp + 0x38]
movups xmmword [rsp + 0x38], xmm6
movups xmmword [rsp + 0x48], xmm7
cmp rdx, 0x10
jb 0x18001203e
mov rcx, qword [rbp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012039
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f2e
call fcn.1800f8c40
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], r12b
jmp 0x18001248d
movabs rcx, 0xb4c2439245bdcf85
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xc0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xc8], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov qword [rbp + 0x1f0], rax
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0xc0]
mov qword [rbp + 0x1f8], rax
pxor xmm0, xmmword [rbp + 0x1f0]
movdqa xmmword [rbp + 0xc0], xmm0
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x30], rsi
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x210], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0xb0]
mov qword [rbp + 0x218], rax
lea rax, [rbp + 0xb0]
pxor xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0xb0], xmm0
inc rbx
cmp byte [rax + rbx], 0
jne 0x180012123
mov rax, r15
mov r15, qword [rsp + 0x48]
sub rax, r15
cmp rax, rbx
jb 0x180012f74
cmp qword [rsp + 0x50], 0x10
lea r13, [rsp + 0x38]
mov rax, qword [rsp + 0x38]
lea rsi, [rbp]
mov qword [rbp], r12
mov edi, 0xf
mov qword [rbp + 0x10], r12
cmovae r13, rax
mov qword [rbp + 0x18], r12
lea r12, [rbx + r15]
mov qword [rsp + 0x30], rax
cmp r12, rdi
jbe 0x1800121fb
mov rdi, r12
movabs rax, 0x7fffffffffffffff
or rdi, 0xf
cmp rdi, rax
jbe 0x1800121a0
mov rdi, rax
movabs rax, 0x8000000000000027
jmp 0x1800121c7
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1800121e6
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180012f86
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x180012f35
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x1800121f7
test rcx, rcx
je 0x1800121f2
call fcn.1800f8c04
jmp 0x1800121f4
xor eax, eax
mov rsi, rax
mov qword [rbp], rsi
mov r8, r15
mov qword [rbp + 0x10], r12
mov rdx, r13
mov qword [rbp + 0x18], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r15]
mov r8, rbx
lea rdx, [rbp + 0xb0]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r12], 0
inc r8
cmp byte [r14 + r8], 0
jne 0x180012230
mov rdx, r14
lea rcx, [rbp]
call fcn.180051970
xor r12d, r12d
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x1b8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x1c8], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
lea rax, [rbp + 0xc0]
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x180012280
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x1b8]
call fcn.180051970
mov r9, qword [rbp + 0x358]
mov rdi, 0xffffffffffffffff
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
inc rdi
cmp byte [r9 + rdi], r12b
jne 0x1800122d4
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x180012320
cmp rdx, 0x10
lea rax, [rcx + rdi]
lea rbx, [rbp - 0x40]
mov qword [rbp - 0x30], rax
cmovae rbx, qword [rbp - 0x40]
mov r8, rdi
add rbx, rcx
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbp - 0x40]
mov byte [rbx + rdi], r12b
jmp 0x180012331
mov rdx, rdi
mov qword [rsp + 0x20], rdi
lea rcx, [rbp - 0x40]
call fcn.180053810
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 + 0x50]
movups xmmword [rbp + 0x2b0], xmm6
movups xmmword [rbp + 0x2c0], xmm7
cmp rax, 0x10
jb 0x180012393
mov rcx, qword [rsp + 0x30]
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001238e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f35
call fcn.1800f8c40
mov rdx, qword [rbp - 0x28]
movups xmmword [rsp + 0x38], xmm6
movups xmmword [rsp + 0x48], xmm7
cmp rdx, 0x10
jb 0x1800123d8
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800123d3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f35
call fcn.1800f8c40
mov rdx, qword [rbp + 0x1d0]
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], r12b
cmp rdx, 0x10
jb 0x180012429
mov rcx, qword [rbp + 0x1b8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012424
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f35
call fcn.1800f8c40
mov rdx, qword [rbp + 0x18]
mov qword [rbp + 0x1c8], r12
mov qword [rbp + 0x1d0], 0xf
mov byte [rbp + 0x1b8], r12b
cmp rdx, 0x10
jb 0x18001247d
mov rcx, qword [rbp]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012478
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f35
call fcn.1800f8c40
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], 0xf
mov byte [rbp], r12b
mov qword [rbp + 0x50], r12
lea rdx, [rsp + 0x60]
movabs rax, 0xd79d33e2268f99d6
movabs r14, 0x7ddf7f494c2e80c6
mov qword [rbp + 0x358], rax
movabs rdi, 0xb4c2439245bdf5bf
mov rax, qword [rbp + 0x358]
movabs r13, 0x1a7911437ad82004
mov qword [rsp + 0x60], rax
movabs r15, 0xfa41645890a277f9
movabs rax, 0x6e1c761c09ab4168
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x68], rax
movabs rax, 0xfa320034f5cb11a6
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x70], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x78], rax
mov qword [rbp + 0x358], rdi
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x358], r13
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x358], r15
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
movdqa xmm0, xmmword [rsp + 0x60]
movdqa xmm1, xmmword [rsp + 0x70]
pxor xmm0, xmmword [rbp + 0x60]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x78], rax
pxor xmm1, xmmword [rbp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmmword [rsp + 0x60], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp + 0x50]
call rax
mov qword [rbp + 0x358], rax
mov rbx, rax
test rax, rax
je 0x180012c60
nop dword [rax]
movabs rax, 0xd29d33e2268f99d6
lea rdx, [rbp + 0x140]
mov qword [rsp + 0x30], rax
movabs rax, 0x6e1c761c1eb4456d
mov rcx, qword [rsp + 0x30]
mov qword [rbp + 0x140], rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x148], rax
movabs rax, 0xfa41643dfdc319a6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x150], rax
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x158], rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov qword [rbp + 0x240], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x248], rax
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x250], rax
mov qword [rsp + 0x30], r14
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0x140]
movdqa xmm1, xmmword [rbp + 0x150]
pxor xmm0, xmmword [rbp + 0x240]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x258], rax
pxor xmm1, xmmword [rbp + 0x250]
movdqa xmmword [rbp + 0x150], xmm1
movdqa xmmword [rbp + 0x140], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov r12, rax
mov rbx, 0xffffffffffffffff
movabs rax, 0xb4c2439245bdcf85
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
mov qword [rbp + 0xd0], rcx
mov qword [rsp + 0x30], r13
mov rcx, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rcx
mov qword [rsp + 0x30], rdi
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0xd0]
mov qword [rbp + 0x208], rax
lea rax, [rbp + 0xd0]
mov qword [rbp + 0x200], rcx
pxor xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0xd0], xmm0
inc rbx
cmp byte [rax + rbx], 0
jne 0x180012726
mov r14, qword [rsp + 0x48]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, rbx
jb 0x180012f98
cmp qword [rsp + 0x50], 0x10
lea r13, [rsp + 0x38]
lea r15, [rbx + r14]
mov edi, 0xf
cmovae r13, qword [rsp + 0x38]
lea rsi, [rbp - 0x20]
xor eax, eax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
cmp r15, rdi
jbe 0x1800127f0
mov rdi, r15
or rdi, 0xf
cmp rdi, rcx
jbe 0x180012799
mov rdi, rcx
movabs rax, 0x8000000000000027
jmp 0x1800127c0
cmp rdi, 0x16
mov ecx, 0x16
cmovb rdi, rcx
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1800127df
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180012f8c
mov rcx, rax
call fcn.1800f8c04
test rax, rax
je 0x180012f3c
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x1800127ec
test rcx, rcx
je 0x1800127e9
call fcn.1800f8c04
mov rsi, rax
mov qword [rbp - 0x20], rsi
mov r8, r14
mov qword [rbp - 0x10], r15
mov rdx, r13
mov qword [rbp - 8], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r14]
mov r8, rbx
lea rdx, [rbp + 0xd0]
call sub.VCRUNTIME140.dll_memcpy
mov r8, 0xffffffffffffffff
mov byte [rsi + r15], 0
inc r8
cmp byte [r12 + r8], 0
jne 0x180012825
mov rdx, r12
lea rcx, [rbp - 0x20]
call fcn.180051970
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 + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm1
cmp rdx, 0x10
jb 0x18001289d
mov rcx, qword [rbp - 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012898
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f3c
call fcn.1800f8c40
mov qword [rbp - 0x10], r12
lea rdx, [rbp + 0x160]
mov qword [rbp - 8], 0xf
movabs rcx, 0x7ddf7f494c2e80c6
mov byte [rbp - 0x20], r12b
movabs rax, 0xd29d33e2268f99d6
mov qword [rsp + 0x30], rax
movabs r13, 0x1a7911437ad82004
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x160], rax
movabs rax, 0x6e1c761c1eb4456d
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x168], rax
movabs rax, 0xfa35012bf6c418a6
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x178], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x260], rax
mov qword [rsp + 0x30], r13
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x268], rax
movabs rax, 0xfa41645890a277f9
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rcx
mov qword [rbp + 0x270], rax
mov rax, qword [rsp + 0x30]
movdqa xmm0, xmmword [rbp + 0x160]
movdqa xmm1, xmmword [rbp + 0x170]
pxor xmm0, xmmword [rbp + 0x260]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x278], rax
pxor xmm1, xmmword [rbp + 0x270]
movdqa xmmword [rbp + 0x170], xmm1
movdqa xmmword [rbp + 0x160], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x358]
call rax
mov r14, qword [rbp + 0x198]
lea rdx, [rbp + 0x180]
mov rsi, qword [rbp + 0x180]
cmp r14, 0x10
mov r15d, eax
mov rcx, 0xffffffffffffffff
cmovae rdx, rsi
nop
inc rcx
cmp byte [rdx + rcx], r12b
jne 0x1800129f0
cmp r14, 0x10
lea rdx, [rbp + 0x180]
mov ebx, 0xffffffff
cmovae rdx, rsi
test ecx, ecx
je 0x180012a3f
mov r8d, ecx
lea r12, [0x180119310]
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 0x180012a20
xor r12d, r12d
mov rdi, qword [0x1802b7f38]
not ebx
mov dword [rsp + 0x68], r12d
mov rcx, rdi
mov rax, qword [rdi + 8]
mov qword [rsp + 0x60], rax
cmp byte [rax + 0x19], 0
jne 0x180012a89
nop
mov qword [rsp + 0x60], rax
cmp dword [rax + 0x20], ebx
jae 0x180012a75
mov rax, qword [rax + 0x10]
mov dword [rsp + 0x68], r12d
jmp 0x180012a83
mov rcx, rax
mov dword [rsp + 0x68], 1
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180012a60
cmp byte [rcx + 0x19], 0
jne 0x180012a94
cmp ebx, dword [rcx + 0x20]
jae 0x180012aef
movabs rax, 0x555555555555555
cmp qword [0x1802b7f40], rax
je 0x180012f92
mov ecx, 0x30
call fcn.1800f8c04
movups xmm0, xmmword [rsp + 0x60]
mov r8, rax
lea rdx, [rbp + 0x280]
lea rcx, [0x1802b7f38]
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 + 0x280], xmm0
call fcn.180053af0
cmp r14, 0x10
jb 0x180012b26
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180012b1e
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f43
mov rcx, rsi
call fcn.1800f8c40
mov qword [rbp + 0x190], r12
lea rdx, [rsp + 0x60]
mov qword [rbp + 0x198], 0xf
movabs rax, 0xd79d33e2268f99d6
mov byte [rbp + 0x180], 0
movabs r14, 0x7ddf7f494c2e80c6
mov qword [rbp + 0x358], rax
movabs rdi, 0xb4c2439245bdf5bf
mov rax, qword [rbp + 0x358]
movabs r15, 0xfa41645890a277f9
mov qword [rsp + 0x60], rax
movabs rax, 0x6e1c761c09ab4168
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x68], rax
movabs rax, 0xfa320034f5cb11a6
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x70], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
mov qword [rsp + 0x78], rax
mov qword [rbp + 0x358], rdi
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x358], r13
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x358], r15
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
movdqa xmm0, xmmword [rsp + 0x60]
movdqa xmm1, xmmword [rsp + 0x70]
pxor xmm0, xmmword [rbp + 0x60]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x78], rax
pxor xmm1, xmmword [rbp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmmword [rsp + 0x60], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp + 0x50]
call rax
mov qword [rbp + 0x358], rax
mov rbx, rax
test rax, rax
jne 0x1800125c0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x180012c9d
mov rcx, qword [rsp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012c98
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012f43
call fcn.1800f8c40
mov esi, dword [rbp + 0x340]
lea rdx, [rbp - 0x60]
mov qword [rsp + 0x48], r12
movabs rax, 0xdd9d33e2268f99d6
mov qword [rsp + 0x50], 0xf
inc esi
mov byte [rsp + 0x38], 0
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x60], rax
movabs rax, 0x6e1c761c1fbf4169
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x58], rax
movabs rax, 0x991e172bf1ce14a6
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x50], rax
movabs rax, 0x7ddf7f493840f5a9
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp - 0x48], rax
mov qword [rbp + 0x358], rdi
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x358], r13
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x88], rax
movdqa xmm0, xmmword [rbp + 0x80]
mov qword [rbp + 0x358], r15
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x358], r14
mov rax, qword [rbp + 0x358]
movdqa xmm1, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp - 0x60]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0x98], rax
pxor xmm1, xmmword [rbp + 0x90]
movdqa xmmword [rbp - 0x50], xmm1
mov dword [rbp + 0x340], esi
movdqa xmmword [rbp - 0x60], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, qword [rbp + 0x1a0]
mov rcx, rdi
movsxd rbx, esi
call rax
movabs r15, 0x7fffffffffffffff
cmp rbx, rax
jb 0x180011be0
mov rbx, qword [rbp + 0x48]
mov esi, dword [rbp + 0x348]
mov qword [rbp + 0x350], r12
lea rdx, [rbp - 0x80]
movabs rax, 0xd09d33e2268f99d6
inc esi
mov qword [rbp + 0x340], rax
inc rbx
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x80], rax
movabs rax, 0x7f1e4e2d13b94d6b
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x78], rax
movabs rax, 0x982c012be3c3288d
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x70], rax
movabs rax, 0x7ddf7f493f4be9aa
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp - 0x68], rax
movabs rax, 0xb4c2439245bdf5bf
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0x340], r13
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xe8], rax
movabs rax, 0xfa41645890a277f9
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0x340]
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0x340], r14
mov rax, qword [rbp + 0x340]
movdqa xmm0, xmmword [rbp - 0x80]
movdqa xmm1, xmmword [rbp - 0x70]
pxor xmm0, xmmword [rbp + 0xe0]
mov rcx, qword [0x1802b7ec8]
mov qword [rbp + 0xf8], rax
pxor xmm1, xmmword [rbp + 0xf0]
movdqa xmmword [rbp - 0x70], xmm1
mov dword [rbp + 0x348], esi
mov qword [rbp + 0x48], rbx
movdqa xmmword [rbp - 0x80], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x1a8]
lea rdx, [rbp + 0x350]
call rax
movsxd rax, esi
cmp rax, qword [rbp + 0x350]
jae 0x180012f4a
mov rdi, qword [rbp + 0x1b0]
jmp 0x180011aa2
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 + 0x3e0]
mov r15, qword [rsp + 0x3f8]
movaps xmm7, xmmword [rsp + 0x3d0]
add rsp, 0x400
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1800065c0
int3
call fcn.1800063e0
int3
call fcn.1800065c0
int3
call fcn.1800063e0
int3
call fcn.1800063e0
int3
call fcn.180007660
int3
call fcn.1800065c0
int3