Function at 0x140017580
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x58]
sub rsp, 0x158
xor edi, edi
mov ebx, dword [0x14005fc10]
mov qword [rbp - 0x80], rbx
mov rax, qword gs:[0x58]
mov r10, qword [rax + rbx*8]
mov qword [rbp + 0xb8], r10
mov ecx, 0x550
mov eax, dword [rcx + r10]
mov r9d, 0x538
test al, 1
jne 0x1400176fc
or eax, 1
mov dword [rcx + r10], eax
lea rax, [r10 + r9]
movups xmm0, xmmword [0x140047e08]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140047e18]
movsd qword [rsp + 0x50], xmm0
mov qword [rax], rdi
mov word [rax + 8], di
xor ecx, ecx
mov qword [rax + 0xa], rcx
mov dword [rax + 0x12], ecx
mov edx, edi
lea rcx, [rax + 0xb]
lea r8, [rsp + 0x4a]
sub r8, rax
lea r11, [rsp + 0x40]
sub r11, rax
lea rbx, [rsp + 0x41]
sub rbx, rax
lea rdi, [rsp + 0x42]
sub rdi, rax
lea rsi, [rsp + 0x43]
sub rsi, rax
lea r14, [rsp + 0x44]
sub r14, rax
lea r15, [rsp + 0x45]
sub r15, rax
lea r12, [rsp + 0x46]
sub r12, rax
lea r13, [rsp + 0x47]
sub r13, rax
lea r10, [rsp + 0x48]
sub r10, rax
lea r9, [rsp + 0x49]
sub r9, rax
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r8 + rcx - 0xb]
mov byte [rcx - 1], al
movzx eax, byte [r11 + rcx]
mov byte [rcx], al
movzx eax, byte [rbx + rcx]
mov byte [rcx + 1], al
movzx eax, byte [rdi + rcx]
mov byte [rcx + 2], al
movzx eax, byte [rsi + rcx]
mov byte [rcx + 3], al
movzx eax, byte [r14 + rcx]
mov byte [rcx + 4], al
movzx eax, byte [r15 + rcx]
mov byte [rcx + 5], al
movzx eax, byte [r12 + rcx]
mov byte [rcx + 6], al
movzx eax, byte [rcx + r13]
mov byte [rcx + 7], al
movzx eax, byte [r10 + rcx]
mov byte [rcx + 8], al
movzx eax, byte [r9 + rcx]
mov byte [rcx + 9], al
movzx eax, byte [r8 + rcx]
mov byte [rcx + 0xa], al
add edx, 0xc
lea rcx, [rcx + 0xc]
cmp edx, 0xc
jb 0x140017680
mov r9d, 0x538
mov r10, qword [rbp + 0xb8]
mov rbx, qword [rbp - 0x80]
xor edi, edi
cmp byte [r10 + r9 + 9], 0
jne 0x140017722
lea r8, [r10 + r9]
mov edx, edi
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x7a]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 0xc
jb 0x140017710
mov byte [r10 + r9 + 9], 1
lea rcx, [r9 + 0xa]
add rcx, r10
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r15, rax
mov qword [rbp - 0x68], rax
test rax, rax
je 0x140017b9c
mov rcx, qword gs:[0x58]
mov r9, qword [rcx + rbx*8]
mov qword [rsp + 0x60], r9
mov eax, 0x570
mov ecx, dword [rax + r9]
mov edx, 0x558
test cl, 1
jne 0x1400178c1
or ecx, 1
mov dword [rax + r9], ecx
mov eax, edx
add rax, r9
movups xmm0, xmmword [0x140047e20]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140047e30]
movsd qword [rsp + 0x50], xmm0
mov qword [rax], 0
mov word [rax + 8], 0
xor ecx, ecx
mov qword [rax + 0xa], rcx
mov dword [rax + 0x12], ecx
mov word [rax + 0x16], cx
mov dword [rbp + 0xb8], edi
lea rcx, [rax + 0xb]
lea r8, [rsp + 0x4a]
sub r8, rax
lea r10, [rsp + 0x40]
sub r10, rax
lea r11, [rsp + 0x41]
sub r11, rax
lea rbx, [rsp + 0x42]
sub rbx, rax
lea rdi, [rsp + 0x43]
sub rdi, rax
lea rsi, [rsp + 0x44]
sub rsi, rax
lea r14, [rsp + 0x45]
sub r14, rax
lea r15, [rsp + 0x46]
sub r15, rax
lea r12, [rsp + 0x47]
sub r12, rax
lea r13, [rsp + 0x48]
sub r13, rax
lea r9, [rsp + 0x49]
sub r9, rax
lea rdx, [rsp + 0x4b]
sub rdx, rax
mov qword [rbp - 0x70], rdx
lea rdx, [rsp + 0x4c]
sub rdx, rax
mov qword [rbp - 0x78], rdx
mov edx, dword [rbp + 0xb8]
nop
movzx eax, byte [rcx + r8 - 0xb]
mov byte [rcx - 1], al
movzx eax, byte [r10 + rcx]
mov byte [rcx], al
movzx eax, byte [r11 + rcx]
mov byte [rcx + 1], al
movzx eax, byte [rbx + rcx]
mov byte [rcx + 2], al
movzx eax, byte [rdi + rcx]
mov byte [rcx + 3], al
movzx eax, byte [rsi + rcx]
mov byte [rcx + 4], al
movzx eax, byte [r14 + rcx]
mov byte [rcx + 5], al
movzx eax, byte [r15 + rcx]
mov byte [rcx + 6], al
movzx eax, byte [r12 + rcx]
mov byte [rcx + 7], al
movzx eax, byte [rcx + r13]
mov byte [rcx + 8], al
movzx eax, byte [r9 + rcx]
mov byte [rcx + 9], al
movzx eax, byte [rcx + r8]
mov byte [rcx + 0xa], al
mov rax, qword [rbp - 0x70]
movzx eax, byte [rax + rcx]
mov byte [rcx + 0xb], al
mov rax, qword [rbp - 0x78]
movzx eax, byte [rax + rcx]
mov byte [rcx + 0xc], al
add edx, 0xe
lea rcx, [rcx + 0xe]
cmp edx, 0xe
jb 0x140017830
mov r9, qword [rsp + 0x60]
mov rbx, qword [rbp - 0x80]
mov r15, qword [rbp - 0x68]
mov edx, 0x558
mov r8d, edx
add r8, r9
cmp byte [r8 + 9], 0
jne 0x1400178e2
xor edx, edx
movsxd rcx, edx
lea eax, [rdx - 0x79]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 0xe
jb 0x1400178d0
mov byte [r8 + 9], 1
lea rdx, [r8 + 0xa]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
lea rcx, [rbp + 0xb8]
call fcn.140006330
cmp byte [rax + 9], 0
jne 0x140017924
xor r8d, r8d
nop dword [rax]
movsxd rdx, r8d
lea ecx, [r8 - 0x79]
xor byte [rdx + rax + 0xa], cl
inc r8d
cmp r8d, 0x11
jb 0x140017910
mov byte [rax + 9], 1
lea rdx, [rax + 0xa]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
mov rcx, qword gs:[0x58]
mov rdi, qword [rcx + rbx*8]
mov eax, 0x5b4
mov ecx, dword [rax + rdi]
mov ebx, 0x598
test cl, 1
jne 0x14001798f
or ecx, 1
mov dword [rax + rdi], ecx
lea rcx, [rdi + rbx]
movups xmm0, xmmword [0x140047e58]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140047e68]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [0x140047e70]
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x40]
call fcn.1400035c0
lea r8, [rdi + rbx]
cmp byte [r8 + 9], 0
jne 0x1400179b2
xor edx, edx
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x78]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 0x11
jb 0x1400179a0
mov byte [r8 + 9], 1
lea rdx, [r8 + 0xa]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
mov qword [rbp - 0x60], rax
mov rdx, qword gs:[0x58]
mov r12d, dword [0x14005fc10]
mov rdi, qword [rdx + r12*8]
mov eax, 0x5d4
mov ecx, dword [rax + rdi]
mov ebx, 0x5b8
test cl, 1
jne 0x140017a29
or ecx, 1
mov dword [rax + rdi], ecx
lea rcx, [rdi + rbx]
movups xmm0, xmmword [0x140047e78]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140047e88]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [0x140047e90]
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x40]
call fcn.1400035c0
lea r8, [rdi + rbx]
cmp byte [r8 + 9], 0
jne 0x140017a52
xor edx, edx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x78]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 0x11
jb 0x140017a40
mov byte [r8 + 9], 1
lea rdx, [r8 + 0xa]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
mov qword [rbp + 8], rax
lea rcx, [rbp + 0xb8]
call fcn.140006ed0
cmp byte [rax + 9], 0
jne 0x140017a94
xor r8d, r8d
movsxd rdx, r8d
lea ecx, [r8 - 0x78]
xor byte [rdx + rax + 0xa], cl
inc r8d
cmp r8d, 0x14
jb 0x140017a80
mov byte [rax + 9], 1
lea rdx, [rax + 0xa]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
mov qword [rbp - 0x80], rax
test rsi, rsi
je 0x140017b93
test r14, r14
je 0x140017b93
test r13, r13
je 0x140017b93
test rdi, rdi
je 0x140017b93
test rax, rax
je 0x140017b93
lea rcx, [rbp + 0xb8]
call fcn.140007910
xor r13d, r13d
cmp byte [rax + 9], r13b
jne 0x140017b05
mov r8d, r13d
movsxd rdx, r8d
lea ecx, [r8 - 0x77]
xor byte [rdx + rax + 0xa], cl
inc r8d
cmp r8d, 0x1e
jb 0x140017af1
mov byte [rax + 9], 1
lea rcx, [rax + 0xa]
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
call rsi
mov rdi, rax
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140017b93
lea rcx, [rbp + 0xb8]
call fcn.140008330
cmp byte [rax + 9], 0
jne 0x140017b54
mov r8d, r13d
nop
movsxd rdx, r8d
lea ecx, [r8 - 0x77]
xor byte [rdx + rax + 0xa], cl
inc r8d
cmp r8d, 0x11
jb 0x140017b40
mov byte [rax + 9], 1
mov r8d, 0x1bb
lea rdx, [rax + 0xa]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov rcx, rdi
call r14
mov r14, rax
mov qword [rbp - 0x78], rax
test rax, rax
jne 0x140017bb0
mov rcx, rdi
call rbx
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, qword gs:[0x58]
mov rdx, qword [rcx + r12*8]
mov ecx, 0x680
mov eax, dword [rcx + rdx]
mov r8d, 0x668
test al, 1
jne 0x140017d1d
or eax, 1
mov dword [rcx + rdx], eax
mov eax, r8d
add rax, rdx
movups xmm0, xmmword [0x140047f10]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x140047f20]
movsd qword [rsp + 0x50], xmm0
mov qword [rax], 0
mov word [rax + 8], 0
xor ecx, ecx
mov qword [rax + 0xa], rcx
mov dword [rax + 0x12], ecx
mov byte [rax + 0x16], cl
mov dword [rbp + 0xb8], r13d
lea rcx, [rax + 0xb]
lea r8, [rsp + 0x4a]
sub r8, rax
lea r9, [rsp + 0x40]
sub r9, rax
lea r10, [rsp + 0x41]
sub r10, rax
lea r11, [rsp + 0x42]
sub r11, rax
lea rbx, [rsp + 0x43]
sub rbx, rax
lea rdi, [rsp + 0x44]
sub rdi, rax
lea rsi, [rsp + 0x45]
sub rsi, rax
lea r14, [rsp + 0x46]
sub r14, rax
lea r15, [rsp + 0x47]
sub r15, rax
lea r12, [rsp + 0x48]
sub r12, rax
lea r13, [rsp + 0x49]
sub r13, rax
lea rdx, [rsp + 0x4b]
sub rdx, rax
mov qword [rsp + 0x60], rdx
mov edx, dword [rbp + 0xb8]
nop dword [rax + rax]
movzx eax, byte [rcx + r8 - 0xb]
mov byte [rcx - 1], al
movzx eax, byte [r9 + rcx]
mov byte [rcx], al
movzx eax, byte [r10 + rcx]
mov byte [rcx + 1], al
movzx eax, byte [r11 + rcx]
mov byte [rcx + 2], al
movzx eax, byte [rbx + rcx]
mov byte [rcx + 3], al
movzx eax, byte [rdi + rcx]
mov byte [rcx + 4], al
movzx eax, byte [rsi + rcx]
mov byte [rcx + 5], al
movzx eax, byte [r14 + rcx]
mov byte [rcx + 6], al
movzx eax, byte [r15 + rcx]
mov byte [rcx + 7], al
movzx eax, byte [r12 + rcx]
mov byte [rcx + 8], al
movzx eax, byte [rcx + r13]
mov byte [rcx + 9], al
movzx eax, byte [rcx + r8]
mov byte [rcx + 0xa], al
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + rcx]
mov byte [rcx + 0xb], al
add edx, 0xd
lea rcx, [rcx + 0xd]
cmp edx, 0xd
jb 0x140017c90
mov r12d, dword [0x14005fc10]
mov r15, qword [rbp - 0x68]
mov r14, qword [rbp - 0x78]
xor r13d, r13d
mov r8d, 0x668
mov rcx, qword gs:[0x58]
mov eax, r12d
add r8, qword [rcx + rax*8]
cmp byte [r8 + 9], 0
jne 0x140017d52
mov edx, r13d
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x76]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 0xd
jb 0x140017d40
mov byte [r8 + 9], 1
lea rdi, [r8 + 0xa]
mov rcx, qword gs:[0x58]
mov eax, r12d
mov rdx, qword [rcx + rax*8]
mov ecx, 0x660
mov eax, dword [rcx + rdx]
mov esi, 0x650
test al, 1
jne 0x140017e13
or eax, 1
mov dword [rcx + rdx], eax
mov eax, esi
add rax, rdx
movups xmm0, xmmword [0x140047f00]
movaps xmmword [rsp + 0x60], xmm0
mov qword [rax], 0
mov word [rax + 8], 0
xor ecx, ecx
mov dword [rax + 0xa], ecx
mov byte [rax + 0xe], cl
mov edx, r13d
lea rcx, [rax + 0xb]
lea r8, [rsp + 0x6a]
sub r8, rax
lea r9, [rsp + 0x60]
sub r9, rax
lea r10, [rsp + 0x61]
sub r10, rax
lea r11, [rsp + 0x62]
sub r11, rax
lea rbx, [rsp + 0x63]
sub rbx, rax
nop dword [rax + rax]
movzx eax, byte [rcx + r8 - 0xb]
mov byte [rcx - 1], al
movzx eax, byte [r9 + rcx]
mov byte [rcx], al
movzx eax, byte [r10 + rcx]
mov byte [rcx + 1], al
movzx eax, byte [r11 + rcx]
mov byte [rcx + 2], al
movzx eax, byte [rbx + rcx]
mov byte [rcx + 3], al
add edx, 5
lea rcx, [rcx + 5]
cmp edx, 5
jb 0x140017de0
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r8d, esi
add r8, qword [rcx + rax*8]
cmp byte [r8 + 9], 0
jne 0x140017e42
mov edx, r13d
movsxd rcx, edx
lea eax, [rdx - 0x77]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 5
jb 0x140017e30
mov byte [r8 + 9], 1
lea r9, [r8 + 0xa]
mov rbx, 0xffffffffffffffff
mov rcx, rbx
inc rcx
cmp byte [r9 + rcx], 0
jne 0x140017e55
mov r8, qword [rbp + 0xa0]
mov rdx, qword [r8 + 0x10]
movabs r13, 0x7fffffffffffffff
mov rax, r13
sub rax, rdx
cmp rax, rcx
jb 0x140018649
mov rax, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x140017e90
mov rax, qword [r8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
movzx edx, byte [rbp + 0xb8]
lea rcx, [rbp + 0x10]
call fcn.140003360
nop
mov r8, rbx
inc r8
cmp byte [rdi + r8], 0
jne 0x140017eb3
mov rdx, rdi
lea rcx, [rbp + 0x10]
call fcn.140013280
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 8], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 8], xmm1
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140017f33
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017f2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001864f
call fcn.14001d7d0
movdqa xmm0, xmmword [0x140048390]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], dil
lea rsi, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rsi, qword [rbp - 0x18]
mov rcx, qword gs:[0x58]
mov eax, r12d
mov rdx, qword [rcx + rax*8]
mov ecx, 0x698
mov eax, dword [rcx + rdx]
mov r8d, 0x688
test al, 1
jne 0x14001800b
or eax, 1
mov dword [rcx + rdx], eax
mov eax, r8d
add rax, rdx
movups xmm0, xmmword [0x140047f28]
movaps xmmword [rsp + 0x60], xmm0
mov qword [rax], rdi
mov word [rax + 8], di
xor ecx, ecx
mov dword [rax + 0xa], ecx
mov byte [rax + 0xe], cl
mov edx, edi
lea rcx, [rax + 0xb]
lea r8, [rsp + 0x6a]
sub r8, rax
lea r9, [rsp + 0x60]
sub r9, rax
lea r10, [rsp + 0x61]
sub r10, rax
lea r11, [rsp + 0x62]
sub r11, rax
lea rdi, [rsp + 0x63]
sub rdi, rax
nop dword [rax]
movzx eax, byte [rcx + r8 - 0xb]
mov byte [rcx - 1], al
movzx eax, byte [r9 + rcx]
mov byte [rcx], al
movzx eax, byte [r10 + rcx]
mov byte [rcx + 1], al
movzx eax, byte [r11 + rcx]
mov byte [rcx + 2], al
movzx eax, byte [rdi + rcx]
mov byte [rcx + 3], al
add edx, 5
lea rcx, [rcx + 5]
cmp edx, 5
jb 0x140017fd0
xor edi, edi
mov r8d, 0x688
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r9d, r8d
add r9, qword [rcx + rax*8]
cmp byte [r9 + 9], 0
jne 0x140018042
mov edx, edi
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x76]
xor byte [rcx + r9 + 0xa], al
inc edx
cmp edx, 5
jb 0x140018030
mov byte [r9 + 9], 1
lea rdx, [r9 + 0xa]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], 0x800000
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov r8, rsi
mov rcx, r14
call qword [rbp - 0x60]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x140018094
mov rcx, r14
mov rbx, qword [rbp - 0x80]
call rbx
mov rcx, qword [rbp - 0x70]
call rbx
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x140018603
lea rcx, [rbp + 0xb8]
call fcn.140004930
cmp byte [rax + 9], 0
jne 0x1400180c4
mov r8d, edi
nop dword [rax]
movsxd rdx, r8d
lea ecx, [r8 - 0x75]
xor byte [rdx + rax + 0xa], cl
inc r8d
cmp r8d, 0x30
jb 0x1400180b0
mov byte [rax + 9], 1
lea rdx, [rax + 0xa]
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
mov r8, rbx
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x1400180e0
lea rcx, [rbp - 0x38]
call fcn.140001560
nop
mov rcx, qword gs:[0x58]
mov eax, r12d
mov rdx, qword [rcx + rax*8]
mov ecx, 0x70c
mov eax, dword [rcx + rdx]
mov r8d, 0x6f8
test al, 1
jne 0x1400181ec
or eax, 1
mov dword [rcx + rdx], eax
mov ecx, r8d
add rcx, rdx
movups xmm0, xmmword [0x140047f90]
movaps xmmword [rsp + 0x60], xmm0
mov eax, dword [0x140047fa0]
mov dword [rsp + 0x70], eax
mov qword [rcx], 0
mov word [rcx + 8], 0
xor eax, eax
mov dword [rcx + 0xa], eax
mov word [rcx + 0xe], ax
mov byte [rcx + 0x10], al
mov r8d, edi
lea rdx, [rcx + 0xb]
lea r9, [rsp + 0x6a]
sub r9, rcx
lea r10, [rsp + 0x60]
sub r10, rcx
lea r11, [rsp + 0x61]
sub r11, rcx
lea rdi, [rsp + 0x62]
sub rdi, rcx
lea rsi, [rsp + 0x63]
sub rsi, rcx
lea r14, [rsp + 0x64]
sub r14, rcx
lea r15, [rsp + 0x65]
sub r15, rcx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + r9 - 0xb]
mov byte [rdx - 1], al
movzx eax, byte [r10 + rdx]
mov byte [rdx], al
movzx eax, byte [r11 + rdx]
mov byte [rdx + 1], al
movzx eax, byte [rdi + rdx]
mov byte [rdx + 2], al
movzx eax, byte [rsi + rdx]
mov byte [rdx + 3], al
movzx eax, byte [r14 + rdx]
mov byte [rdx + 4], al
movzx eax, byte [r15 + rdx]
mov byte [rdx + 5], al
add r8d, 7
lea rdx, [rdx + 7]
cmp r8d, 7
jb 0x1400181a0
xor edi, edi
mov r8d, 0x6f8
mov rcx, qword gs:[0x58]
mov eax, r12d
add r8, qword [rcx + rax*8]
cmp byte [r8 + 9], 0
jne 0x140018222
mov edx, edi
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x75]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 7
jb 0x140018210
mov byte [r8 + 9], 1
lea rdi, [r8 + 0xa]
mov rcx, qword gs:[0x58]
mov eax, r12d
mov rdx, qword [rcx + rax*8]
mov ecx, 0x6f4
mov eax, dword [rcx + rdx]
mov r8d, 0x6e0
test al, 1
jne 0x14001834b
or eax, 1
mov dword [rcx + rdx], eax
mov ecx, r8d
add rcx, rdx
movups xmm0, xmmword [0x140047f78]
movaps xmmword [rsp + 0x60], xmm0
mov eax, dword [0x140047f88]
mov dword [rsp + 0x70], eax
xor edx, edx
mov qword [rcx], rdx
mov word [rcx + 8], dx
xor eax, eax
mov qword [rcx + 0xa], rax
mov byte [rcx + 0x12], al
mov r8d, edx
lea rdx, [rcx + 0xb]
lea r9, [rsp + 0x6a]
sub r9, rcx
lea r10, [rsp + 0x60]
sub r10, rcx
lea r11, [rsp + 0x61]
sub r11, rcx
lea rsi, [rsp + 0x62]
sub rsi, rcx
lea r14, [rsp + 0x63]
sub r14, rcx
lea r15, [rsp + 0x64]
sub r15, rcx
lea r12, [rsp + 0x65]
sub r12, rcx
lea r13, [rsp + 0x66]
sub r13, rcx
lea rax, [rsp + 0x67]
sub rax, rcx
mov rcx, rax
nop word [rax + rax]
movzx eax, byte [rdx + r9 - 0xb]
mov byte [rdx - 1], al
movzx eax, byte [r10 + rdx]
mov byte [rdx], al
movzx eax, byte [r11 + rdx]
mov byte [rdx + 1], al
movzx eax, byte [rsi + rdx]
mov byte [rdx + 2], al
movzx eax, byte [r14 + rdx]
mov byte [rdx + 3], al
movzx eax, byte [r15 + rdx]
mov byte [rdx + 4], al
movzx eax, byte [r12 + rdx]
mov byte [rdx + 5], al
movzx eax, byte [rdx + r13]
mov byte [rdx + 6], al
movzx eax, byte [rcx + rdx]
mov byte [rdx + 7], al
add r8d, 9
lea rdx, [rdx + 9]
cmp r8d, 9
jb 0x1400182e0
mov r12d, dword [0x14005fc10]
movabs r13, 0x7fffffffffffffff
mov r8d, 0x6e0
mov rcx, qword gs:[0x58]
mov eax, r12d
add r8, qword [rcx + rax*8]
cmp byte [r8 + 9], 0
jne 0x140018382
xor edx, edx
nop dword [rax]
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x75]
xor byte [rcx + r8 + 0xa], al
inc edx
cmp edx, 9
jb 0x140018370
mov byte [r8 + 9], 1
lea r9, [r8 + 0xa]
mov rax, rbx
nop
inc rax
cmp byte [r9 + rax], 0
jne 0x140018390
mov r8, qword [rbp + 0xa8]
mov rdx, qword [r8 + 0x10]
sub r13, rdx
cmp r13, rax
jb 0x140018655
mov rcx, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x1400183be
mov rcx, qword [r8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
movzx edx, byte [rbp + 0xb8]
lea rcx, [rbp + 0x30]
call fcn.140003360
nop
nop
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1400183e0
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp + 0x30]
call fcn.140013280
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rax, qword [rbp + 0xb0]
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140018442
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140013280
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x48], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x1400184bd
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400184b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001865b
call fcn.14001d7d0
movdqa xmm0, xmmword [0x140048390]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], 0
mov rdx, qword [rbp + 0x48]
cmp rdx, 0xf
jbe 0x14001850b
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018506
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018661
call fcn.14001d7d0
movdqa xmm0, xmmword [0x140048390]
movdqu xmmword [rbp + 0x40], xmm0
mov byte [rbp + 0x30], 0
lea r9, [rbp - 0x58]
cmp qword [rbp - 0x40], 0xf
cmova r9, qword [rbp - 0x58]
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdx, qword [rbp - 0x38]
mov eax, dword [rbp - 0x48]
mov dword [rsp + 0x20], eax
mov r8d, dword [rbp - 0x28]
mov rcx, qword [rbp - 0x60]
call qword [rbp + 8]
mov rcx, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x80]
call rbx
mov rcx, qword [rbp - 0x78]
call rbx
mov rcx, qword [rbp - 0x70]
call rbx
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
mov rdx, qword [rbp - 0x40]
cmp rdx, 0xf
jbe 0x1400185a6
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400185a1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018667
call fcn.14001d7d0
movdqa xmm0, xmmword [0x140048390]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x1400185f2
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400185ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001866d
call fcn.14001d7d0
movdqa xmm0, xmmword [0x140048390]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x140017b9c
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018639
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018643
call fcn.14001d7d0
jmp 0x140017b9c
call fcn.1400244cc
int3
call fcn.140013240
nop
call fcn.1400244cc
nop
call fcn.140013240
nop
call fcn.1400244cc
nop
call fcn.1400244cc
nop
call fcn.1400244cc
nop
call fcn.1400244cc
int3