Function at 0x1800015f0
Capabilities:
Link many functions at runtime

Disassembly:
push rbp
push rbx
push r13
lea rbp, [rsp - 0x8a0]
sub rsp, 0x9a0
mov rax, qword [0x180022008]
xor rax, rsp
mov qword [rbp + 0x880], rax
xor r13d, r13d
nop dword [rax + rax]
mov r8d, 0xe
mov qword [rbp - 0x58], r13
lea rdx, [0x18001f368]
mov qword [rbp - 0x50], 7
lea rcx, [rbp - 0x68]
mov word [rbp - 0x68], r13w
call fcn.180001dc0
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x48]
call fcn.180001460
cmp qword [rax + 0x18], 8
jb 0x18000165e
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdx, qword [rbp - 0x30]
mov rbx, rax
cmp rdx, 8
jb 0x1800016aa
mov rcx, qword [rbp - 0x48]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800016a5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d1d
call fcn.1800037b0
mov qword [rbp - 0x38], r13
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r13w
test rbx, rbx
je 0x180001620
mov r8d, 0x14
mov qword [rsp + 0x9c8], rdi
lea rdx, [0x18001f388]
mov qword [rbp - 0x78], r13
lea rcx, [rsp + 0x78]
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r13w
call fcn.180001dc0
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x18000170e
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [rsp + 0x70]
mov rdi, rax
cmp rdx, 0x10
jb 0x18000175a
mov rcx, qword [rsp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001755
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d17
call fcn.1800037b0
mov r8d, 0xd
mov qword [rsp + 0x990], r15
lea rdx, [0x18001f3b8]
mov qword [rsp + 0x68], r13
lea rcx, [rbp - 0x28]
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], r13b
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r13w
call fcn.180001dc0
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 8]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x1800017b3
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [rbp + 0x10]
mov r15, rax
cmp rdx, 0x10
jb 0x1800017fd
mov rcx, qword [rbp - 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800017f8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d23
call fcn.1800037b0
mov r8d, 0xb
mov qword [rsp + 0x9d0], r12
lea rdx, [0x18001f3d8]
mov qword [rbp + 8], r13
lea rcx, [rbp + 0x18]
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], r13b
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], 7
mov word [rbp + 0x18], r13w
call fcn.180001dc0
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x38]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x180001853
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [rbp + 0x50]
mov r12, rax
cmp rdx, 0x10
jb 0x18000189d
mov rcx, qword [rbp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001898
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d29
call fcn.1800037b0
mov r8d, 0xd
mov qword [rsp + 0x998], r14
lea rdx, [0x18001f3f0]
mov qword [rbp + 0x48], r13
lea rcx, [rbp + 0x58]
mov qword [rbp + 0x50], 0xf
mov byte [rbp + 0x38], r13b
mov qword [rbp + 0x68], r13
mov qword [rbp + 0x70], 7
mov word [rbp + 0x58], r13w
call fcn.180001dc0
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x78]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x1800018f3
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [rbp + 0x90]
mov r14, rax
cmp rdx, 0x10
jb 0x180001940
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000193b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d2f
call fcn.1800037b0
mov r8d, 0x10
mov qword [rsp + 0x9c0], rsi
lea rdx, [0x18001f410]
mov qword [rbp + 0x88], r13
lea rcx, [rbp + 0x98]
mov qword [rbp + 0x90], 0xf
mov byte [rbp + 0x78], r13b
mov qword [rbp + 0xa8], r13
mov qword [rbp + 0xb0], 7
mov word [rbp + 0x98], r13w
call fcn.180001dc0
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0xb8]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x1800019ae
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [rbp + 0xd0]
mov rsi, rax
cmp rdx, 0x10
jb 0x1800019fe
mov rcx, qword [rbp + 0xb8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800019f9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d35
call fcn.1800037b0
xor edx, edx
mov qword [rbp + 0xc8], r13
mov r8d, 0x1f4
mov qword [rbp + 0xd0], 0xf
lea rcx, [rbp + 0x280]
mov byte [rbp + 0xb8], r13b
call fcn.180005320
xor edx, edx
lea rcx, [rbp + 0x480]
mov r8d, 0x400
call fcn.180005320
xor edx, edx
lea rcx, [rbp + 0x170]
mov r8d, 0x104
call fcn.180005320
mov rcx, qword [0x180023d20]
lea rdx, [rbp + 0x280]
mov r8d, 0x1f4
call rdi
test eax, eax
je 0x180001cce
mov r8d, 0xb
mov qword [rsp + 0x68], r13
lea rdx, [0x18001f438]
mov qword [rsp + 0x70], 7
lea rcx, [rsp + 0x58]
mov word [rsp + 0x58], r13w
call fcn.180001dc0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x180001ab5
mov rax, qword [rax]
mov r8, rax
lea rcx, [rbp + 0x170]
mov edx, 0x104
call fcn.18000a0e8
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x180001b05
mov rcx, qword [rsp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001b00
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d3b
call fcn.1800037b0
mov r8d, 0x36
mov qword [rsp + 0x68], r13
lea rdx, [0x18001f460]
mov qword [rsp + 0x70], 7
lea rcx, [rsp + 0x58]
mov word [rsp + 0x58], r13w
call fcn.180001dc0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.1800011d0
cmp qword [rax + 0x18], 0x10
jb 0x180001b49
mov rax, qword [rax]
lea rcx, [rbp + 0x170]
mov rdx, rax
mov qword [rsp + 0x28], rcx
lea r9, str._r_nif_exist
lea rcx, [rbp + 0x280]
mov qword [rsp + 0x20], rcx
lea r8, [rbp + 0x280]
lea rcx, [rbp + 0x480]
call fcn.180001f40
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x180001bba
mov rcx, qword [rsp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001bb5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180001d11
call fcn.1800037b0
xor r9d, r9d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x80
lea rcx, [rbp + 0x170]
mov edx, 0x40000000
mov dword [rsp + 0x20], 2
lea r8d, [r9 + 3]
call r15
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x180001cce
lea rax, [rbp + 0x480]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r13b
jne 0x180001c00
lea r9, [rbp + 0xd8]
mov qword [rsp + 0x20], r13
lea rdx, [rbp + 0x480]
mov rcx, rdi
call r12
mov rcx, rdi
call r14
xorps xmm0, xmm0
lea rdx, [rbp + 0x170]
xor eax, eax
xor r9d, r9d
mov qword [rbp + 0x160], rax
xor r8d, r8d
mov qword [rbp + 0xf0], rax
xor ecx, ecx
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
movups xmmword [rbp + 0x100], xmm0
mov dword [rsp + 0x28], r13d
movups xmmword [rbp + 0x130], xmm0
mov dword [rsp + 0x20], r13d
movups xmmword [rbp + 0x140], xmm0
mov dword [rbp + 0x100], 0x68
movups xmmword [rbp + 0x110], xmm0
mov dword [rbp + 0x13c], 1
movups xmmword [rbp + 0x120], xmm0
mov word [rbp + 0x140], r13w
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0xe0], xmm0
call rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rsi, qword [rsp + 0x9c0]
mov r14, qword [rsp + 0x998]
mov r12, qword [rsp + 0x9d0]
mov r15, qword [rsp + 0x990]
mov rdi, qword [rsp + 0x9c8]
mov rcx, qword [rbp + 0x880]
xor rcx, rsp
call fcn.180003750
add rsp, 0x9a0
pop r13
pop rbx
pop rbp
ret
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3
call fcn.18000a394
int3