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

Disassembly:
push rbp
push rbx
push rsi
push r12
push r13
push r14
lea rbp, [rsp - 0x318]
sub rsp, 0x418
call fcn.180011ff0
mov rcx, rax
mov qword [rbp + 0x1b8], rax
mov rbx, rax
call fcn.180011ed0
mov rsi, rax
mov qword [rbp + 0x1c0], rax
xor r13d, r13d
lea rdx, [rbp - 0x50]
mov qword [rbp + 0x360], r13
movabs rax, 0x730fa5587c37e586
mov qword [rbp + 0x350], rax
movabs r12, 0x833cebbd0ad1ef40
mov rcx, qword [rbp + 0x350]
movabs rax, 0xe65bb4d363b0822f
mov qword [rbp - 0x50], rcx
mov r14d, r13d
mov qword [rbp + 0x350], rax
movabs rax, 0xd2419eb9ae65b83d
mov rcx, qword [rbp + 0x350]
mov qword [rbp - 0x48], rcx
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x40], rax
movabs rax, 0xee55e5cf179d8fbe
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x38], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x350], r12
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x28], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x30], rax
movabs rax, 0xee55e5cf64f8e6d2
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
movdqa xmm0, xmmword [rbp - 0x50]
movdqa xmm1, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x20]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x38], rax
xorps xmm1, xmmword [rbp + 0x30]
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x358], r13d
movdqa xmmword [rbp - 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x360]
mov rcx, rbx
call rax
cmp qword [rbp + 0x360], r13
jbe 0x18001cd83
movzx ebx, byte [rbp + 0x350]
mov qword [rsp + 0x410], rdi
mov edi, r13d
mov qword [rsp + 0x408], r15
movabs r15, 0x7fffffffffffffff
movaps xmmword [rsp + 0x3f0], xmm6
movaps xmmword [rsp + 0x3e0], xmm7
mov qword [rbp + 0x18], r13
mov rax, qword [rsi + rdi*8]
movabs rcx, 0x7e0fa5587c37e586
movabs rdx, 0xf7598ce26fb68e2d
mov dword [rbp + 0x350], r13d
movabs r8, 0xd37388b9bc688416
movabs r9, 0xee55e5cf109693bd
mov rsi, qword [rax]
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x70], rax
mov qword [rbp + 0x368], rdx
lea rdx, [rbp - 0x70]
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x368], r8
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x368], r9
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x58], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xb8], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xc0], rax
movabs rax, 0xee55e5cf64f8e6d2
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp - 0x70]
movdqa xmm1, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp + 0xb0]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0xc8], rax
xorps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp - 0x60], xmm1
mov qword [rbp + 0x1b0], rsi
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rsi
call rax
test rax, rax
je 0x18001cc04
mov rdi, r13
nop word [rax + rax]
mov rdx, qword [rsi]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x68], r13
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18001ba60
lea rcx, [rsp + 0x50]
call fcn.180086ae0
movabs rcx, 0xee55e5cf64f8e6d2
lea rdx, [rbp + 0x130]
movabs rax, 0x7e0fa5587c37e586
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x130], rax
movabs rax, 0xf7598ce26fb68e2d
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x138], rax
movabs rax, 0xb02c88b9bc688416
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x148], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x230], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x238], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x368], rcx
mov qword [rbp + 0x240], rax
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp + 0x130]
movdqa xmm1, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0x230]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x248], rax
xorps xmm1, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x140], xmm1
movdqa xmmword [rbp + 0x130], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, rdi
mov rcx, rsi
call rax
xorps xmm0, xmm0
mov qword [rbp + 0x10], rax
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r13
mov r8, 0xffffffffffffffff
mov r14, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
mov qword [rsp + 0x40], r14
mov qword [rbp + 0x128], r13
inc r8
cmp byte [rdi + r8], 0
jne 0x18001bbd2
mov rdx, rdi
lea rcx, [rbp + 0x110]
call fcn.180086ae0
cmp qword [rbp + 0x120], 0
mov rdx, qword [rbp + 0x128]
sete sil
cmp rdx, 0xf
jbe 0x18001bc38
mov rcx, qword [rbp + 0x110]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bc33
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd5c
call fcn.18019aa3c
mov qword [rbp + 0x120], r13
mov qword [rbp + 0x128], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x110], 0
test sil, sil
je 0x18001beee
movabs rax, 0x1750d5281f05b3d5
mov rdi, 0xffffffffffffffff
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x78], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp + 0x70]
mov qword [rbp + 0x1f8], rax
lea rax, [rbp + 0x70]
xorps xmm0, xmmword [rbp + 0x1f0]
movdqa xmmword [rbp + 0x70], xmm0
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x18001bce0
mov rax, r15
mov r15, qword [rsp + 0x60]
sub rax, r15
cmp rax, rdi
jb 0x18001cda0
cmp qword [rsp + 0x68], 0xf
lea rax, [rsp + 0x50]
mov r13, qword [rsp + 0x50]
lea r12, [r15 + rdi]
cmova rax, r13
lea r14, [rbp - 0x10]
xor edx, edx
mov qword [rbp + 0x368], rax
mov esi, reloc.WS2_32.dll_ntohs
mov qword [rbp], rdx
mov qword [rbp + 8], rdx
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
cmp r12, rsi
jbe 0x18001bdd2
mov rsi, r12
movabs rcx, 0x7fffffffffffffff
or rsi, 0xf
cmp rsi, rcx
jbe 0x18001bd68
movabs rax, 0x8000000000000000
mov rsi, rcx
add rax, 0x27
jmp 0x18001bd8f
cmp rsi, 0x16
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x18001bdb5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001cd9a
mov rcx, rax
call fcn.18019aa00
test rax, rax
je 0x18001cd47
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
mov rax, qword [rbp + 0x368]
jmp 0x18001bdce
test rcx, rcx
je 0x18001bdcb
call fcn.18019aa00
mov r14, rax
mov rax, qword [rbp + 0x368]
jmp 0x18001bdce
mov r14, rdx
mov qword [rbp - 0x10], r14
mov r8, r15
mov qword [rbp], r12
mov rdx, rax
mov qword [rbp + 8], rsi
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [r15 + r14]
mov r8, rdi
lea rdx, [rbp + 0x70]
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x40]
mov r8, 0xffffffffffffffff
mov byte [r14 + r12], 0
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18001be10
lea rcx, [rbp - 0x10]
call fcn.18000fd50
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov rax, qword [rsp + 0x68]
movups xmmword [rbp + 0x2a0], xmm6
movups xmmword [rbp + 0x2b0], xmm7
cmp rax, 0xf
jbe 0x18001be87
lea rdx, [rax + 1]
mov rax, r13
cmp rdx, 0x1000
jb 0x18001be7f
mov r13, qword [r13 - 8]
add rdx, 0x27
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd47
mov rcx, r13
call fcn.18019aa3c
mov rdx, qword [rbp + 8]
movups xmmword [rsp + 0x50], xmm6
movups xmmword [rsp + 0x60], xmm7
cmp rdx, 0xf
jbe 0x18001becc
mov rcx, qword [rbp - 0x10]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001bec7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd47
call fcn.18019aa3c
xor r13d, r13d
mov qword [rbp + 8], reloc.WS2_32.dll_ntohs
mov qword [rbp], r13
movabs r12, 0x833cebbd0ad1ef40
mov byte [rbp - 0x10], r13b
jmp 0x18001c2a2
movabs rcx, 0x1750d5281f0589ef
movabs rdx, 0x1750d5281f05b3d5
mov qword [rbp + 0x368], rdx
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x98], rax
mov qword [rbp + 0x368], rcx
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x368], r12
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp + 0x90]
mov qword [rbp + 0x208], rax
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0x368], rdx
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x368], rcx
mov rcx, 0xffffffffffffffff
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp + 0x80]
mov qword [rbp + 0x228], rax
lea rax, [rbp + 0x80]
xorps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rbp + 0x80], xmm0
inc rcx
cmp byte [rax + rcx], 0
jne 0x18001bfe6
mov rdx, qword [rsp + 0x60]
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x18001cd94
cmp qword [rsp + 0x68], 0xf
lea rax, [rbp + 0x80]
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0x50]
cmova r9, qword [rsp + 0x50]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x1c8]
mov qword [rsp + 0x20], rdx
movzx edx, bl
call fcn.180010050
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x18001c045
mov rdx, rdi
lea rcx, [rbp + 0x1c8]
call fcn.18000fd50
mov qword [rbp + 0x100], r13
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x108], r13
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xf0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x100], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rax, [rbp + 0x90]
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18001c0b0
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0xf0]
call fcn.18000fd50
mov qword [rbp + 0xe0], r13
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe8], r13
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], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
inc r8
cmp byte [r14 + r8], 0
jne 0x18001c110
mov rdx, r14
lea rcx, [rbp + 0xd0]
call fcn.18000fd50
mov rdx, qword [rsp + 0x68]
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
movups xmmword [rbp + 0x2c0], xmm6
movups xmmword [rbp + 0x2d0], xmm7
cmp rdx, 0xf
jbe 0x18001c18a
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c185
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd4e
call fcn.18019aa3c
mov rdx, qword [rbp + 0xe8]
movups xmmword [rsp + 0x50], xmm6
movups xmmword [rsp + 0x60], xmm7
cmp rdx, 0xf
jbe 0x18001c1d5
mov rcx, qword [rbp + 0xd0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c1d0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd4e
call fcn.18019aa3c
mov rdx, qword [rbp + 0x108]
mov qword [rbp + 0xe0], r13
mov qword [rbp + 0xe8], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xd0], 0
cmp rdx, 0xf
jbe 0x18001c22f
mov rcx, qword [rbp + 0xf0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c22a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd4e
call fcn.18019aa3c
mov rdx, qword [rbp + 0x1e0]
mov qword [rbp + 0x100], r13
mov qword [rbp + 0x108], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xf0], 0
cmp rdx, 0xf
jbe 0x18001c289
mov rcx, qword [rbp + 0x1c8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c284
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd4e
call fcn.18019aa3c
mov qword [rbp + 0x1d8], r13
mov qword [rbp + 0x1e0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x1c8], 0
mov qword [rbp + 0x40], r13
lea rdx, [rsp + 0x70]
movabs rax, 0x740fa5587c37e586
movabs rsi, 0xee55e5cf64f8e6d2
mov qword [rbp + 0x368], rax
movabs r15, 0x1750d5281f0589ef
mov rax, qword [rbp + 0x368]
movabs r14, 0xb02cfbcadd04e749
mov qword [rsp + 0x70], rax
movabs rax, 0xf7598ce279a28e2c
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rsp + 0x78], rax
movabs rax, 0xb05f9fa6b86d8116
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x368], rsi
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x368], r15
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x368], r12
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x368], r14
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x368], rsi
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rbp + 0x50]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x68], rax
xorps xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rbp - 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x10]
lea rdx, [rbp + 0x40]
call rax
mov qword [rbp + 0x368], rax
mov rdi, rax
test rax, rax
je 0x18001ca75
movabs rax, 0x710fa5587c37e586
lea rdx, [rbp + 0x150]
mov qword [rsp + 0x40], rax
movabs rax, 0xf7598ce26ebd8a29
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x150], rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x158], rax
movabs rax, 0xb02cfbafb0658916
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x160], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x168], rax
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], r12
mov qword [rbp + 0x250], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x258], rax
mov qword [rsp + 0x40], r14
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x260], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [rbp + 0x150]
movdqa xmm1, xmmword [rbp + 0x160]
xorps xmm0, xmmword [rbp + 0x250]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x268], rax
xorps xmm1, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x160], xmm1
movdqa xmmword [rbp + 0x150], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rdi
call rax
mov qword [rsp + 0x48], rax
mov rdi, 0xffffffffffffffff
movabs rax, 0x1750d5281f05b3d5
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0xa0], rcx
mov qword [rsp + 0x40], r12
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0xa8], rcx
mov qword [rsp + 0x40], r15
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], r12
mov rax, qword [rsp + 0x40]
movdqa xmm0, xmmword [rbp + 0xa0]
mov qword [rbp + 0x218], rax
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x210], rcx
xorps xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0xa0], xmm0
inc rdi
cmp byte [rax + rdi], 0
jne 0x18001c526
mov r15, qword [rsp + 0x60]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, rdi
jb 0x18001cdb2
cmp qword [rsp + 0x68], 0xf
lea r13, [rsp + 0x50]
lea r12, [r15 + rdi]
mov esi, reloc.WS2_32.dll_ntohs
cmova r13, qword [rsp + 0x50]
lea r14, [rbp - 0x30]
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rax
movups xmmword [rbp - 0x30], xmm0
cmp r12, rsi
jbe 0x18001c5f7
mov rsi, r12
or rsi, 0xf
cmp rsi, rcx
jbe 0x18001c5a0
movabs rax, 0x8000000000000000
mov rsi, rcx
add rax, 0x27
jmp 0x18001c5c7
cmp rsi, 0x16
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x18001c5e6
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001cda6
mov rcx, rax
call fcn.18019aa00
test rax, rax
je 0x18001cd55
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x18001c5f3
test rcx, rcx
je 0x18001c5f0
call fcn.18019aa00
mov r14, rax
mov qword [rbp - 0x30], r14
mov r8, r15
mov qword [rbp - 0x20], r12
mov rdx, r13
mov qword [rbp - 0x18], rsi
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [r15 + r14]
mov r8, rdi
lea rdx, [rbp + 0xa0]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x48]
mov r8, 0xffffffffffffffff
mov byte [r14 + r12], 0
inc r8
cmp byte [rax + r8], 0
jne 0x18001c631
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.18000fd50
xor r13d, r13d
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r13b
mov rdx, qword [rbp - 0x18]
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm1
cmp rdx, 0xf
jbe 0x18001c6a9
mov rcx, qword [rbp - 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001c6a4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd55
call fcn.18019aa3c
mov qword [rbp - 0x20], r13
lea rdx, [rbp + 0x170]
mov qword [rbp - 0x18], reloc.WS2_32.dll_ntohs
movabs rcx, 0xee55e5cf64f8e6d2
mov byte [rbp - 0x30], r13b
movabs rax, 0x710fa5587c37e586
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x170], rax
movabs rax, 0xf7598ce26ebd8a29
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x178], rax
movabs rax, 0xb0589eb9bb628816
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x180], rax
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x188], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x270], rax
movabs rax, 0x833cebbd0ad1ef40
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x278], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rcx
mov qword [rbp + 0x280], rax
mov rax, qword [rsp + 0x48]
movdqa xmm0, xmmword [rbp + 0x170]
movdqa xmm1, xmmword [rbp + 0x180]
xorps xmm0, xmmword [rbp + 0x270]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x288], rax
xorps xmm1, xmmword [rbp + 0x280]
movdqa xmmword [rbp + 0x180], xmm1
movdqa xmmword [rbp + 0x170], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x368]
call rax
mov r15, qword [rbp + 0x1a8]
lea rdx, [rbp + 0x190]
mov r14, qword [rbp + 0x190]
cmp r15, 0xf
mov r12d, eax
mov rcx, 0xffffffffffffffff
cmova rdx, r14
nop dword [rax]
inc rcx
cmp byte [rdx + rcx], r13b
jne 0x18001c800
cmp r15, 0xf
lea rdx, [rbp + 0x190]
mov edi, 0xffffffff
cmova rdx, r14
test ecx, ecx
je 0x18001c852
mov r8d, ecx
lea rbx, [0x1801cc180]
nop dword [rax + rax]
movsx ecx, byte [rdx]
lea rdx, [rdx + 1]
mov eax, edi
shr edi, 8
xor rcx, rax
movzx eax, cl
xor edi, dword [rbx + rax*4]
sub r8, 1
jne 0x18001c830
movzx ebx, byte [rbp + 0x350]
mov rsi, qword [0x180285bb8]
not edi
mov dword [rsp + 0x78], r13d
mov rcx, rsi
mov rax, qword [rsi + 8]
mov qword [rsp + 0x70], rax
cmp byte [rax + 0x19], r13b
jne 0x18001c89b
mov qword [rsp + 0x70], rax
cmp dword [rax + 0x20], edi
jae 0x18001c887
mov rax, qword [rax + 0x10]
mov dword [rsp + 0x78], r13d
jmp 0x18001c895
mov rcx, rax
mov dword [rsp + 0x78], 1
mov rax, qword [rax]
cmp byte [rax + 0x19], r13b
je 0x18001c872
cmp byte [rcx + 0x19], r13b
jne 0x18001c8a6
cmp edi, dword [rcx + 0x20]
jae 0x18001c900
movabs rax, 0x555555555555555
cmp qword [0x180285bc0], rax
je 0x18001cdac
mov ecx, Ordinal_50
call fcn.18019aa00
movups xmm0, xmmword [rsp + 0x70]
mov r8, rax
lea rdx, [rbp + 0x290]
lea rcx, [0x180285bb8]
mov dword [rax + 0x20], edi
mov qword [rax + 0x28], r12
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
mov word [rax + 0x18], r13w
movaps xmmword [rbp + 0x290], xmm0
call fcn.180088540
cmp r15, 0xf
jbe 0x18001c937
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18001c92f
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd5c
mov rcx, r14
call fcn.18019aa3c
mov qword [rbp + 0x1a0], r13
lea rdx, [rsp + 0x70]
mov qword [rbp + 0x1a8], reloc.WS2_32.dll_ntohs
movabs rax, 0x740fa5587c37e586
mov byte [rbp + 0x190], r13b
movabs rsi, 0xee55e5cf64f8e6d2
mov qword [rbp + 0x368], rax
movabs r15, 0x1750d5281f0589ef
mov rax, qword [rbp + 0x368]
movabs r12, 0x833cebbd0ad1ef40
mov qword [rsp + 0x70], rax
movabs r14, 0xb02cfbcadd04e749
movabs rax, 0xf7598ce279a28e2c
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rsp + 0x78], rax
movabs rax, 0xb05f9fa6b86d8116
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x368], rsi
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x368], r15
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x368], r12
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x368], r14
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x368], rsi
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rbp - 0x80]
xorps xmm0, xmmword [rbp + 0x50]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x68], rax
xorps xmm1, xmmword [rbp + 0x60]
movdqa xmmword [rbp - 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x10]
lea rdx, [rbp + 0x40]
call rax
mov qword [rbp + 0x368], rax
mov rdi, rax
test rax, rax
jne 0x18001c3c1
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x18001cab2
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001caad
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001cd5c
call fcn.18019aa3c
mov r14d, dword [rbp + 0x350]
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x60], r13
movabs rax, 0x7e0fa5587c37e586
mov qword [rsp + 0x68], reloc.WS2_32.dll_ntohs
inc r14d
mov byte [rsp + 0x50], 0
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x70], rax
movabs rax, 0xf7598ce26fb68e2d
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x68], rax
movabs rax, 0xd37388b9bc688416
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x60], rax
movabs rax, 0xee55e5cf109693bd
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp - 0x58], rax
mov qword [rbp + 0x368], r15
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0x368], r12
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xb8], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x368]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0x368], rsi
mov rax, qword [rbp + 0x368]
movdqa xmm0, xmmword [rbp - 0x70]
movdqa xmm1, xmmword [rbp - 0x60]
xorps xmm0, xmmword [rbp + 0xb0]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0xc8], rax
xorps xmm1, xmmword [rbp + 0xc0]
movdqa xmmword [rbp - 0x60], xmm1
mov dword [rbp + 0x350], r14d
movdqa xmmword [rbp - 0x70], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, qword [rbp + 0x1b0]
mov rcx, rsi
movsxd rdi, r14d
call rax
movabs r15, 0x7fffffffffffffff
cmp rdi, rax
jb 0x18001ba40
mov rdi, qword [rbp + 0x18]
mov r14d, dword [rbp + 0x358]
mov qword [rbp + 0x360], r13
lea rdx, [rbp - 0x50]
movabs rax, 0x730fa5587c37e586
inc r14d
mov qword [rbp + 0x350], rax
inc rdi
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x50], rax
movabs rax, 0xe65bb4d363b0822f
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x48], rax
movabs rax, 0xd2419eb9ae65b83d
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x40], rax
movabs rax, 0xee55e5cf179d8fbe
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp - 0x38], rax
movabs rax, 0x1750d5281f0589ef
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x350], r12
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x28], rax
movabs rax, 0xb02cfbcadd04e749
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x30], rax
movabs rax, 0xee55e5cf64f8e6d2
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
movdqa xmm0, xmmword [rbp - 0x50]
movdqa xmm1, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x20]
mov rcx, qword [0x180285ad8]
mov qword [rbp + 0x38], rax
xorps xmm1, xmmword [rbp + 0x30]
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x358], r14d
mov qword [rbp + 0x18], rdi
movdqa xmmword [rbp - 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x1b8]
lea rdx, [rbp + 0x360]
call rax
movsxd rax, r14d
cmp rax, qword [rbp + 0x360]
jae 0x18001cd63
mov rsi, qword [rbp + 0x1c0]
jmp 0x18001b8fc
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 + 0x3f0]
mov r15, qword [rsp + 0x408]
mov rdi, qword [rsp + 0x410]
movaps xmm7, xmmword [rsp + 0x3e0]
add rsp, 0x418
pop r14
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret
call fcn.18000fd20
int3
call fcn.18000fc10
int3
call fcn.18000fd20
int3
call fcn.18000fc10
int3
call fcn.180011270
int3
call fcn.18000fd20
int3