Function at 0x1800033c0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x18002a2c8]
xor rax, rsp
mov qword [rbp + 0xb8], rax
xor r13d, r13d
mov dword [rbp - 0x70], r13d
mov dword [rsp + 0x60], r13d
mov dword [rbp - 0x10], 4
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r13b
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
mov ebx, r13d
mov qword [rbp - 0x30], rbx
lea r8, [0x18002a080]
lea rdx, [0x18002a070]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14d, r13d
mov esi, r13d
lea rcx, [rbp - 0x40]
cmp rcx, rax
je 0x18000347c
mov rsi, qword [rax]
mov rdi, rsi
mov qword [rbp - 0x40], rsi
mov r14, qword [rax + 8]
mov qword [rbp - 0x38], r14
mov rbx, qword [rax + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
jmp 0x180003480
mov rdi, qword [rbp - 0x40]
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800034bc
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800034b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049e6
call fcn.180005fc0
sub r14, rsi
lea r8, [r14 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r12, rax
mov qword [rbp - 0x50], r13
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
test rax, rax
je 0x180004998
lea r8, [0x18002a250]
lea rdx, [0x18002a240]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x18000358c
test rsi, rsi
je 0x180003567
sub rbx, rsi
cmp rbx, 0x1000
jb 0x18000355c
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x1800049ec
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [r14], r13
mov qword [r14 + 8], r13
mov qword [r14 + 0x10], r13
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800035c8
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800035c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049ec
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
lea r8, [0x18002a270]
lea rdx, [0x18002a250]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x180003698
test rsi, rsi
je 0x180003671
sub rbx, rsi
cmp rbx, 0x1000
jb 0x180003666
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x1800049f2
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800036d4
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800036cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049f2
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x68], rax
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
lea r8, [0x18002a050]
lea rdx, [0x18002a030]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x1800037a6
test rsi, rsi
je 0x18000377f
sub rbx, rsi
cmp rbx, 0x1000
jb 0x180003774
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x1800049f8
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800037e2
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800037dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049f8
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
lea r8, [0x18002a160]
lea rdx, [0x18002a140]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x1800038b4
test rsi, rsi
je 0x18000388d
sub rbx, rsi
cmp rbx, 0x1000
jb 0x180003882
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x1800049fe
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800038f0
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800038eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049fe
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
lea r8, [0x18002a1f0]
lea rdx, [0x18002a1e0]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x1800039c2
test rsi, rsi
je 0x18000399b
sub rbx, rsi
cmp rbx, 0x1000
jb 0x180003990
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x180004a04
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800039fe
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800039f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a04
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], 0
lea r8, [0x18002a120]
lea rdx, [0x18002a100]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x180003acf
test rsi, rsi
je 0x180003aa8
sub rbx, rsi
cmp rbx, 0x1000
jb 0x180003a9d
add rbx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x180004a0a
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [r14 + 0x10]
mov qword [rbp - 0x30], rbx
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180003b0b
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003b06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a0a
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r14, rdi
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp - 0x78], rax
xor r15d, r15d
mov qword [rbp - 0x50], r15
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], r15b
test r13, r13
je 0x18000498c
cmp qword [rsp + 0x68], r15
je 0x18000498c
cmp qword [rsp + 0x70], r15
je 0x18000498c
cmp qword [rsp + 0x78], r15
je 0x18000498c
cmp qword [rbp - 0x80], r15
je 0x18000498c
test rax, rax
je 0x18000498c
lea r8, [0x18002a0f0]
lea rdx, [0x18002a0a0]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180003c13
test rdi, rdi
je 0x180003bf1
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x180003be6
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a10
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r14, qword [rsi + 8]
mov qword [rbp - 0x38], r14
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rsi], r15
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], r15
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180003c4f
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003c4a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a10
call fcn.180005fc0
sub r14, rdi
lea r8, [r14 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp + 0x78], 0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x88], xmm0
mov r14, qword [rbp - 0x50]
lea r12, [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
cmovae r12, rcx
movabs rax, 0x7fffffffffffffff
cmp r14, 0x10
jae 0x180003cba
movups xmm0, xmmword [r12]
movups xmmword [rbp + 0x78], xmm0
mov qword [rbp + 0x90], 0xf
jmp 0x180003d34
mov rsi, r14
or rsi, 0xf
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180003d04
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004a16
mov rcx, rax
call fcn.1800064fc
mov rcx, rax
test rax, rax
je 0x180004a1c
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180003d12
test rcx, rcx
je 0x180003d10
call fcn.1800064fc
jmp 0x180003d12
xor eax, eax
mov qword [rbp + 0x78], rax
lea r8, [r14 + 1]
mov rdx, r12
mov rcx, rax
call fcn.18000bd30
mov qword [rbp + 0x90], rsi
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x88], r14
xor r14d, r14d
mov qword [rbp - 0x50], r14
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, rcx
mov byte [rax], r14b
lea rcx, [rbp + 0x78]
cmp qword [rbp + 0x90], 0x10
cmovae rcx, qword [rbp + 0x78]
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call r13
mov r13, rax
lea r8, [0x18002a190]
lea rdx, [0x18002a170]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180003df3
test rdi, rdi
je 0x180003dd1
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x180003dc6
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a22
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r15, qword [rsi + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rsi], r14
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], r14
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180003e2f
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003e2a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a22
call fcn.180005fc0
sub r15, rdi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp + 0x58], r14
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x68], xmm0
mov r14, qword [rbp - 0x50]
lea r12, [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
cmovae r12, rcx
cmp r14, 0x10
jae 0x180003e89
movups xmm0, xmmword [r12]
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x70], 0xf
jmp 0x180003f0a
mov rsi, r14
or rsi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180003edd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004a28
mov rcx, rax
call fcn.1800064fc
mov rcx, rax
test rax, rax
je 0x180004a2e
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180003eeb
test rcx, rcx
je 0x180003ee9
call fcn.1800064fc
jmp 0x180003eeb
xor eax, eax
mov qword [rbp + 0x58], rax
lea r8, [r14 + 1]
mov rdx, r12
mov rcx, rax
call fcn.18000bd30
mov qword [rbp + 0x70], rsi
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x68], r14
xor r14d, r14d
mov qword [rbp - 0x50], r14
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, rcx
mov byte [rax], r14b
lea rdx, [rbp + 0x58]
cmp qword [rbp + 0x70], 0x10
cmovae rdx, qword [rbp + 0x58]
lea r8d, [r14 + 0x50]
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov rcx, r13
call qword [rsp + 0x68]
mov qword [rsp + 0x68], rax
lea r8, [0x18002a1a0]
lea rdx, [0x18002a190]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180003fda
test rdi, rdi
je 0x180003fb8
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x180003fad
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a34
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r15, qword [rsi + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rsi], r14
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], r14
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180004016
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004011
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a34
call fcn.180005fc0
sub r15, rdi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp + 0x38], r14
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x48], xmm0
mov r14, qword [rbp - 0x50]
lea r12, [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
cmovae r12, rcx
cmp r14, 0x10
jae 0x180004070
movups xmm0, xmmword [r12]
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x50], 0xf
jmp 0x1800040f1
mov rsi, r14
or rsi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x1800040c4
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004a3a
mov rcx, rax
call fcn.1800064fc
mov rcx, rax
test rax, rax
je 0x180004a40
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800040d2
test rcx, rcx
je 0x1800040d0
call fcn.1800064fc
jmp 0x1800040d2
xor eax, eax
mov qword [rbp + 0x38], rax
lea r8, [r14 + 1]
mov rdx, r12
mov rcx, rax
call fcn.18000bd30
mov qword [rbp + 0x50], rsi
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x48], r14
xor r12d, r12d
mov qword [rbp - 0x50], r12
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, rcx
mov byte [rax], r12b
lea r8, [0x18002a170]
lea rdx, [0x18002a160]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180004189
test rdi, rdi
je 0x180004167
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x18000415c
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a46
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r15, qword [rsi + 8]
mov qword [rbp - 0x38], r15
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rsi], r12
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], r12
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800041c5
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800041c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a46
call fcn.180005fc0
sub r15, rdi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r13, rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp + 0x18], r12
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x28], xmm0
mov r14, qword [rbp - 0x50]
lea r15, [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
cmovae r15, rcx
cmp r14, 0x10
jae 0x18000421e
movups xmm0, xmmword [r15]
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x30], 0xf
jmp 0x1800042a0
mov rsi, r14
or rsi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180004272
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004a4c
mov rcx, rax
call fcn.1800064fc
mov rcx, rax
test rax, rax
je 0x180004a52
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180004281
test rcx, rcx
je 0x18000427e
call fcn.1800064fc
jmp 0x180004281
mov rax, r12
mov qword [rbp + 0x18], rax
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call fcn.18000bd30
mov qword [rbp + 0x30], rsi
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x28], r14
mov qword [rbp - 0x50], r12
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, rcx
mov byte [rax], 0
lea r8, [rbp + 0x18]
cmp qword [rbp + 0x30], 0x10
cmovae r8, qword [rbp + 0x18]
lea rdx, [rbp + 0x38]
cmp qword [rbp + 0x50], 0x10
cmovae rdx, qword [rbp + 0x38]
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], 0x84000100
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov rcx, qword [rsp + 0x68]
call qword [rsp + 0x70]
mov r15, rax
lea r8, [0x18002a1e0]
lea rdx, [0x18002a1a0]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180004377
test rdi, rdi
je 0x180004355
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x18000434a
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a58
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r13, qword [rsi + 8]
mov qword [rbp - 0x38], r13
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
mov qword [rsi], r12
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], r12
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1800043b3
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800043ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a58
call fcn.180005fc0
sub r13, rdi
lea r8, [r13 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r13, rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp - 8], r12
xorps xmm0, xmm0
movdqu xmmword [rbp + 8], xmm0
mov r14, qword [rbp - 0x50]
lea r12, [rbp - 0x60]
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
cmovae r12, rcx
cmp r14, 0x10
jae 0x18000440d
movups xmm0, xmmword [r12]
movups xmmword [rbp - 8], xmm0
mov qword [rbp + 0x10], 0xf
jmp 0x18000448e
mov rsi, r14
or rsi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180004461
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004a5e
mov rcx, rax
call fcn.1800064fc
mov rcx, rax
test rax, rax
je 0x180004a64
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x18000446f
test rcx, rcx
je 0x18000446d
call fcn.1800064fc
jmp 0x18000446f
xor eax, eax
mov qword [rbp - 8], rax
lea r8, [r14 + 1]
mov rdx, r12
mov rcx, rax
call fcn.18000bd30
mov qword [rbp + 0x10], rsi
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 8], r14
xor esi, esi
mov qword [rbp - 0x50], rsi
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, rcx
mov byte [rax], sil
lea rdx, [rbp - 8]
cmp qword [rbp + 0x10], 0x10
cmovae rdx, qword [rbp - 8]
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, 0xffffffff
mov rcx, r15
call qword [rsp + 0x78]
test rax, rax
je 0x180004957
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x70]
mov edx, 0x20000005
mov rcx, r15
call qword [rbp - 0x80]
cmp dword [rbp - 0x70], 0x15f90
jbe 0x180004957
call fcn.180001b70
test eax, eax
je 0x180004957
mov ecx, dword [rbp - 0x70]
call fcn.18000d72c
mov r14, rax
mov rsi, rax
lea r9, [rbp - 0x6c]
mov r8d, 0x2800
mov rdx, rax
mov rcx, r15
mov r12, qword [rbp - 0x78]
call r12
test eax, eax
je 0x18000455e
mov r13d, dword [rsp + 0x60]
mov ecx, dword [rbp - 0x6c]
add r14, rcx
add r13d, ecx
test ecx, ecx
je 0x180004556
lea r9, [rbp - 0x6c]
mov r8d, 0x2800
mov rdx, r14
mov rcx, r15
call r12
test eax, eax
jne 0x180004532
mov dword [rsp + 0x60], r13d
mov r13, rdi
xor eax, eax
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
mov qword [rbp - 0x18], rax
mov r14d, dword [rsp + 0x60]
add r14, rsi
cmp rsi, r14
je 0x1800045b5
mov rdx, qword [rbp - 0x20]
nop dword [rax]
cmp rdx, rax
je 0x180004597
movzx eax, byte [rsi]
mov byte [rdx], al
mov rdx, qword [rbp - 0x20]
inc rdx
mov qword [rbp - 0x20], rdx
jmp 0x1800045a7
mov r8, rsi
lea rcx, [rbp - 0x28]
call fcn.1800059e0
mov rdx, qword [rbp - 0x20]
inc rsi
cmp rsi, r14
je 0x1800045b5
mov rax, qword [rbp - 0x18]
jmp 0x180004580
lea r8, [0x18002a140]
lea rdx, [0x18002a130]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov rsi, rax
lea rax, [rbp - 0x40]
cmp rax, rsi
je 0x180004638
test rdi, rdi
je 0x180004611
sub rbx, rdi
mov rax, rdi
cmp rbx, 0x1000
jb 0x180004606
add rbx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a6a
mov rdx, rbx
mov rcx, rdi
call fcn.180005fc0
mov rdi, qword [rsi]
mov qword [rbp - 0x40], rdi
mov r13, qword [rsi + 8]
mov qword [rbp - 0x38], r13
mov rbx, qword [rsi + 0x10]
mov qword [rbp - 0x30], rbx
xor r14d, r14d
mov qword [rsi], r14
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], r14
jmp 0x18000463b
xor r14d, r14d
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180004677
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004672
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a6a
call fcn.180005fc0
sub r13, rdi
lea r8, [r13 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov r15, rdi
mov qword [rbp - 0x38], rdi
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r12, rax
test rax, rax
je 0x180004949
lea r8, [0x18002a290]
lea rdx, [0x18002a270]
lea rcx, [rsp + 0x40]
call fcn.180001380
mov r14, rax
mov rsi, rdi
lea rax, [rbp - 0x40]
cmp rax, r14
je 0x180004737
test rdi, rdi
je 0x180004710
sub rbx, rdi
cmp rbx, 0x1000
jb 0x180004705
add rbx, 0x27
mov rcx, qword [rdi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x180004a70
mov rsi, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.180005fc0
mov rdi, qword [r14]
mov qword [rbp - 0x40], rdi
mov r15, qword [r14 + 8]
mov qword [rbp - 0x38], r15
mov rax, qword [r14 + 0x10]
mov qword [rbp - 0x30], rax
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rsi, rdi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180004773
mov rdx, qword [rsp + 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000476e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004a70
call fcn.180005fc0
sub r15, rsi
lea r8, [r15 - 1]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180004fe0
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r14d, r14d
mov qword [rbp - 0x50], r14
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
mov byte [rcx], r14b
test rax, rax
je 0x180004940
lea rdi, [0x18002aee0]
mov rcx, rdi
cmp qword [0x18002aef8], 0x10
cmovae rcx, qword [0x18002aee0]
xor edx, edx
call rax
mov qword [rbp - 0x50], r14
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rax, qword [rbp - 0x60]
mov byte [rax], r14b
mov rax, qword [0x18002aef0]
movabs rcx, 0x7fffffffffffffff
sub rcx, rax
cmp rcx, 1
jb 0x180004a76
cmp qword [0x18002aef8], 0x10
cmovae rdi, qword [0x18002aee0]
mov ebx, 1
mov qword [rsp + 0x30], rbx
lea rcx, [0x180025f44]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9, rdi
lea rcx, [rsp + 0x40]
call fcn.1800058c0
nop
lea rdx, [0x18002af00]
cmp qword [0x18002af18], 0x10
cmovae rdx, qword [0x18002af00]
mov r8, qword [0x18002af10]
lea rcx, [rsp + 0x40]
call fcn.1800053c0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x98], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa8], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800048d5
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800048d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800049e0
call fcn.180005fc0
lea rdx, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0x10
cmovae rdx, qword [rbp + 0x98]
lea r8, [0x180025f98]
lea rcx, [rbp - 0x68]
call fcn.18000d244
mov r9, qword [rbp - 0x68]
test r9, r9
je 0x18000492f
mov r8, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x28]
sub r8, rcx
mov rdx, rbx
call fcn.18000d0e4
mov rcx, qword [rbp - 0x68]
call fcn.18000c834
lea rcx, [rbp + 0x98]
call fcn.180005140
jmp 0x18000494c
mov ebx, r14d
lea rcx, [rbp + 0x98]
call fcn.180005140
jmp 0x18000494c
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ebx, r14d
lea rcx, [rbp - 0x28]
call fcn.180004db0
jmp 0x180004959
mov ebx, esi
lea rcx, [rbp - 8]
call fcn.180005140
nop
lea rcx, [rbp + 0x18]
call fcn.180005140
nop
lea rcx, [rbp + 0x38]
call fcn.180005140
nop
lea rcx, [rbp + 0x58]
call fcn.180005140
nop
lea rcx, [rbp + 0x78]
call fcn.180005140
jmp 0x18000499b
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor r13d, r13d
mov ebx, r13d
lea rcx, [rbp - 0x40]
call fcn.180004db0
nop
lea rcx, [rbp - 0x60]
call fcn.180005140
mov eax, ebx
mov rcx, qword [rbp + 0xb8]
xor rcx, rsp
call fcn.180005fa0
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.180001170
int3
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.180001170
int3
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.180001170
int3
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.180001170
int3
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.180001170
int3
call fcn.18000d6b4
nop
call fcn.18000d6b4
int3
call fcn.18000d6b4
int3
call fcn.180001210
int3