Function at 0x1400ca5ac
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
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1401a8138]
xor rax, rsp
mov qword [rbp - 8], rax
mov eax, 1
mov dword [rbp - 0x40], 0x10
mov edx, eax
mov dword [rbp - 0x3c], eax
mov rsi, r9
lea ebx, [rax + 5]
lea r14d, [rax + 1]
mov r8d, ebx
mov ecx, r14d
call fcn.1400cb074
or r13, 0xffffffffffffffff
mov rdi, rax
cmp rax, r13
je 0x1400ca9de
mov word [rbp - 0x38], r14w
xor r12d, r12d
mov qword [rbp - 0x30], r12
mov r14d, 0x7f000001
call fcn.1400caa64
mov r15, rax
test rax, rax
je 0x1400ca66b
mov ecx, ebx
call fcn.1401101d0
mov rdx, rax
mov rcx, r15
mov rbx, rax
mov dword [rax + 1], 0x6c6e6f74
mov byte [rax + 5], r12b
mov byte [rax], 0x68
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r15, rax
call fcn.1401101c8
test r15, r15
je 0x1400ca66b
mov ecx, r14d
call r15
mov r14d, eax
mov dword [rbp - 0x34], r14d
mov word [rbp - 0x36], r12w
mov qword [rsi + 8], r13
mov qword [rsi], r13
call fcn.1400caa64
mov r14, rax
test rax, rax
je 0x1400ca9c5
mov ecx, 0xb
call fcn.1401101d0
mov rdx, rax
mov rcx, r14
mov rbx, rax
mov dword [rax + 7], 0x74706f
mov dword [rax + 2], 0x636f7374
mov word [rax], 0x6573
mov byte [rax + 6], 0x6b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r14, rax
call fcn.1401101c8
test r14, r14
je 0x1400ca9c5
mov r8d, 4
lea r9, [rbp - 0x3c]
mov edx, 0xffff
mov dword [rsp + 0x20], r8d
mov rcx, rdi
call r14
cmp eax, r13d
je 0x1400ca9c5
call fcn.1400caa64
mov r14, rax
test rax, rax
je 0x1400ca9c5
mov ecx, 5
call fcn.1401101d0
mov rdx, rax
mov rcx, r14
mov rbx, rax
mov word [rax], 0x6962
mov word [rax + 3], 0x64
mov byte [rax + 2], 0x6e
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r14, rax
call fcn.1401101c8
test r14, r14
je 0x1400ca9c5
mov r8d, 0x10
lea rdx, [rbp - 0x38]
mov rcx, rdi
call r14
cmp eax, r13d
je 0x1400ca9c5
lea r8, [rbp - 0x40]
mov rcx, rdi
lea rdx, [rbp - 0x38]
call fcn.1400cae2c
cmp eax, r13d
je 0x1400ca9c5
cmp dword [rbp - 0x40], 0x10
jl 0x1400ca9c5
call fcn.1400caa64
mov r14, rax
test rax, rax
je 0x1400ca9c5
mov ecx, 7
call fcn.1401101d0
mov rdx, rax
mov rcx, r14
mov rbx, rax
mov dword [rax], 0x7473696c
mov word [rax + 4], 0x6e65
mov byte [rax + 6], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r14, rax
call fcn.1401101c8
test r14, r14
je 0x1400ca9c5
mov ebx, 1
mov rcx, rdi
mov edx, ebx
call r14
cmp eax, r13d
je 0x1400ca9c5
xor r8d, r8d
lea ecx, [rbx + 1]
mov edx, ebx
call fcn.1400cb074
mov qword [rsi], rax
mov r14, rax
cmp rax, r13
je 0x1400ca9c5
call fcn.1400caa64
mov r15, rax
test rax, rax
je 0x1400ca9c5
lea ecx, [rbx + 7]
call fcn.1401101d0
mov rdx, rax
mov rcx, r15
mov rbx, rax
mov dword [rax + 3], 0x7463656e
mov word [rax + 1], 0x6e6f
mov byte [rax + 7], r12b
mov byte [rax], 0x63
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r15, rax
call fcn.1401101c8
test r15, r15
je 0x1400ca9c5
mov r8d, 0x10
lea rdx, [rbp - 0x38]
mov rcx, r14
call r15
cmp eax, r13d
je 0x1400ca9c5
mov ebx, 1
mov rcx, rdi
mov edx, ebx
call fcn.1400eb89c
test eax, eax
js 0x1400ca9c5
mov r8d, 0x2710
mov qword [rbp - 0x18], rdi
mov edx, ebx
mov dword [rbp - 0x10], 0x300
lea rcx, [rbp - 0x18]
call fcn.1400c4820
mov r14, r13
call fcn.1400caa64
mov r15, rax
test rax, rax
je 0x1400ca8ed
lea ecx, [rbx + 6]
call fcn.1401101d0
mov rdx, rax
mov rcx, r15
mov rbx, rax
mov dword [rax], 0x65636361
mov word [rax + 4], 0x7470
mov byte [rax + 6], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r15, rax
call fcn.1401101c8
test r15, r15
je 0x1400ca8ed
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call r15
mov r14, rax
mov qword [rsi + 8], r14
cmp r14, r13
je 0x1400ca9c5
mov rcx, qword [rsi]
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x38]
mov dword [rbp - 0x40], 0x10
call fcn.1400cae2c
cmp eax, r13d
je 0x1400ca9c5
cmp dword [rbp - 0x40], 0x10
jl 0x1400ca9c5
mov r15, qword [rsi + 8]
mov dword [rbp - 0x40], 0x10
call fcn.1400caa64
mov r14, rax
test rax, rax
je 0x1400ca9c5
mov ecx, 0xc
call fcn.1401101d0
mov rdx, rax
mov rcx, r14
mov rbx, rax
mov dword [rax + 5], 0x616e7265
mov dword [rax], 0x70746567
mov word [rax + 9], 0x656d
mov byte [rax + 0xb], r12b
mov byte [rax + 4], 0x65
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
mov r14, rax
call fcn.1401101c8
test r14, r14
je 0x1400ca9c5
lea r8, [rbp - 0x40]
mov rcx, r15
lea rdx, [rbp - 0x28]
call r14
cmp eax, r13d
je 0x1400ca9c5
cmp dword [rbp - 0x40], 0x10
jl 0x1400ca9c5
movzx eax, word [rbp - 0x28]
cmp word [rbp - 0x38], ax
jne 0x1400ca9c5
mov eax, dword [rbp - 0x24]
cmp dword [rbp - 0x34], eax
jne 0x1400ca9c5
movzx eax, word [rbp - 0x26]
cmp word [rbp - 0x36], ax
jne 0x1400ca9c5
mov rcx, rdi
call fcn.1400cac74
xor eax, eax
jmp 0x1400ca9e1
mov rcx, rdi
call fcn.1400cac74
mov rcx, qword [rsi]
call fcn.1400cac74
mov rcx, qword [rsi + 8]
call fcn.1400cac74
mov eax, r13d
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1400fe8c0
lea r11, [rsp + 0x70]
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