Function at 0x140001520
Capabilities:
Check mutex on windows
Link many functions at runtime

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x190
mov rax, qword [0x140154098]
xor rax, rsp
mov qword [rsp + 0x188], rax
mov r8, qword [str.0356196DAD45]
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x140001576
xor ecx, ecx
call fcn.1400c6a68
call fcn.1400b0f40
call fcn.1400af8f0
mov ecx, 0xdbba1
call fcn.1400b0750
mov ecx, 0xdbc08
call fcn.1400b0750
mov ecx, 5
call fcn.1400b1080
mov ecx, 5
call fcn.1400b1080
lea rax, [rsp + 0x20]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x20]
call fcn.1400b6840
mov rcx, rax
call fcn.1400b6260
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x140154e68], rax
cmp qword [0x140154e68], 0
jne 0x1400015fe
mov ecx, 0xdbba6
call fcn.1400b0750
mov eax, 1
jmp 0x140001c7e
mov ecx, 5
call fcn.1400b1080
lea rax, [rsp + 0x21]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x21]
call fcn.1400b6550
mov rcx, rax
call fcn.1400b6240
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154e78], rax
lea rax, [rsp + 0x22]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x22]
call fcn.1400b6ba0
mov rcx, rax
call fcn.1400b60c0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154e80], rax
lea rax, [rsp + 0x23]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x23]
call fcn.1400b6b40
mov rcx, rax
call fcn.1400b62a0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154e88], rax
lea rax, [rsp + 0x24]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x24]
call fcn.1400b6870
mov rcx, rax
call fcn.1400b6260
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ea8], rax
lea rax, [rsp + 0x25]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x25]
call fcn.1400b6900
mov rcx, rax
call fcn.1400b60c0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154e90], rax
lea rax, [rsp + 0x26]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x26]
call fcn.1400b6a80
mov rcx, rax
call fcn.1400b62a0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154e98], rax
lea rax, [rsp + 0x27]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x27]
call fcn.1400b6b70
mov rcx, rax
call fcn.1400b62a0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ea0], rax
lea rax, [rsp + 0x28]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x28]
call fcn.1400b6640
mov rcx, rax
call fcn.1400b6220
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154eb0], rax
lea rax, [rsp + 0x29]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x29]
call fcn.1400b66d0
mov rcx, rax
call fcn.1400b6280
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154eb8], rax
lea rax, [rsp + 0x2a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2a]
call fcn.1400b68a0
mov rcx, rax
call fcn.1400b6260
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ec0], rax
lea rax, [rsp + 0x2b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x2b]
call fcn.1400b66a0
mov rcx, rax
call fcn.1400b60a0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ec8], rax
lea rax, [rsp + 0x2c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x2c]
call fcn.1400b6cb0
mov rcx, rax
call fcn.1400b60a0
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ed0], rax
lea rax, [rsp + 0x2d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x2d]
call fcn.1400b6ae0
mov rcx, rax
call fcn.1400b6100
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ed8], rax
lea rax, [rsp + 0x2e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x2e]
call fcn.1400b67e0
mov rcx, rax
call fcn.1400b6280
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ee0], rax
lea rax, [rsp + 0x2f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x2f]
call fcn.1400b63f0
mov rcx, rax
call fcn.1400b6260
mov rdx, rax
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140154ee8], rax
cmp qword [0x140154e78], 0
je 0x140001a7e
cmp qword [0x140154e80], 0
je 0x140001a7e
cmp qword [0x140154e88], 0
je 0x140001a7e
cmp qword [0x140154ea8], 0
je 0x140001a7e
cmp qword [0x140154e90], 0
je 0x140001a7e
cmp qword [0x140154e98], 0
je 0x140001a7e
cmp qword [0x140154ea0], 0
je 0x140001a7e
cmp qword [0x140154eb0], 0
je 0x140001a7e
cmp qword [0x140154eb8], 0
je 0x140001a7e
cmp qword [0x140154ec0], 0
je 0x140001a7e
cmp qword [0x140154ec8], 0
je 0x140001a7e
cmp qword [0x140154ed0], 0
je 0x140001a7e
cmp qword [0x140154ed8], 0
je 0x140001a7e
cmp qword [0x140154ee0], 0
je 0x140001a7e
cmp qword [0x140154ee8], 0
jne 0x140001a92
mov ecx, 0xdbba7
call fcn.1400b0750
mov eax, 1
jmp 0x140001c7e
mov ecx, 5
call fcn.1400b1080
mov ecx, 0x1c8
call fcn.1400b0ea0
cmp qword [0x140154f10], 0
jne 0x140001ac4
mov ecx, 0xdbba8
call fcn.1400b0750
mov eax, 1
jmp 0x140001c7e
mov eax, dword [0x140154f18]
mov dword [rsp + 0x3c], eax
mov ecx, 5
call fcn.1400b1080
xor edx, edx
mov eax, dword [rsp + 0x3c]
mov ecx, 8
div ecx
mov dword [rsp + 0x34], eax
xor edx, edx
mov eax, dword [rsp + 0x3c]
mov ecx, 8
div ecx
mov eax, edx
test eax, eax
je 0x140001b06
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x44], 0
mov ecx, 5
call fcn.1400b1080
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0
jmp 0x140001b34
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x38], eax
jge 0x140001bf4
mov eax, dword [rsp + 0x44]
mov rcx, qword [0x140154f10]
add rcx, rax
mov rax, rcx
mov r8d, 8
mov rdx, rax
lea rcx, [rsp + 0x180]
call fcn.1400c10c0
lea r8, section..data
lea rdx, [rsp + 0x180]
mov ecx, 0x20
call fcn.1400b0f50
mov dword [rsp + 0x30], 0
jmp 0x140001b96
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 8
jge 0x140001bcf
mov eax, dword [rsp + 0x3c]
cmp dword [rsp + 0x40], eax
jae 0x140001bc3
movsxd rax, dword [rsp + 0x30]
lea rax, [rsp + rax + 0x180]
mov rdx, rax
lea rcx, [0x140154f90]
call fcn.1400bd2b0
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
jmp 0x140001b8c
mov r8d, 8
xor edx, edx
lea rcx, [rsp + 0x180]
call fcn.1400c14d0
mov eax, dword [rsp + 0x44]
add eax, 8
mov dword [rsp + 0x44], eax
jmp 0x140001b2a
mov ecx, 5
call fcn.1400b1080
lea rcx, [0x140154f90]
call fcn.1400b9be0
mov qword [0x140154f00], rax
lea rcx, [0x140154f90]
call fcn.1400bd830
mov qword [0x140154f08], rax
mov ecx, 5
call fcn.1400b1080
mov rdx, qword [0x140154f08]
mov rcx, qword [0x140154f00]
call fcn.1400b11b0
mov dword [rsp + 0x48], eax
cmp dword [rsp + 0x48], 1
jne 0x140001c56
mov ecx, 0xdbba4
call fcn.1400b0750
mov rdx, qword [0x140154f08]
mov rcx, qword [0x140154f00]
call fcn.1400be7e0
mov rcx, qword [0x140154e68]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x140154e70], eax
xor eax, eax
mov rcx, qword [rsp + 0x188]
xor rcx, rsp
call fcn.1400c03c0
add rsp, 0x190
pop rdi
ret