Function at 0x140080360
Capabilities:
Link many functions at runtime

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0x90
mov rax, qword [0x14016ca00]
xor rax, rsp
mov qword [rsp + 0x60], rax
cmp qword [rcx + 0x48], 0
mov rbx, rcx
je 0x1400805f3
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x20], rdi
mov qword [r11 - 0x10], r12
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
xor ecx, ecx
mov qword [r11 - 0x28], r15
call fcn.1400be040
mov rcx, rax
call fcn.1400be028
mov rcx, qword [rbx + 0x48]
lea rdx, str.SetTimer
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x48]
lea rdx, str.KillTimer
mov r13, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x48]
lea rdx, str.PeekMessageW
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x48]
lea rdx, str.GetMessageW
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x48]
lea rdx, str.TranslateMessage
mov r15, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x48]
lea rdx, str.DispatchMessageW
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
test r13, r13
je 0x1400805c9
test r12, r12
je 0x1400805c9
test rdi, rdi
je 0x1400805c9
test r15, r15
je 0x1400805c9
test rbp, rbp
je 0x1400805c9
test rax, rax
je 0x1400805c9
xor r9d, r9d
xor ecx, ecx
mov r8d, 0x3a98
lea edx, [r9 + 0x64]
mov qword [rsp + 0xb0], rsi
call r13
xor ecx, ecx
mov r9d, 0x400
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x20], ecx
mov rsi, rax
xor eax, eax
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, r9d
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
call rdi
lea rcx, [rsp + 0x30]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call r15
test eax, eax
je 0x1400805c1
nop word [rax + rax]
cmp eax, 0xffffffff
je 0x1400805a9
mov rax, qword [rsp + 0x38]
cmp eax, 0x113
jne 0x14008052d
cmp rsi, qword [rsp + 0x40]
jne 0x14008059a
mov rcx, rbx
call fcn.1400807e0
movzx eax, byte [rbx + 0x30]
test al, al
je 0x140080528
mov rcx, rbx
mov byte [rbx + 0x30], 0
call fcn.140080610
mov rdx, rsi
xor ecx, ecx
mov edi, eax
call r12
xor r9d, r9d
lea edx, [r9 + 0x64]
mov r8d, edi
xor ecx, ecx
call r13
mov rsi, rax
mov rax, qword [rsp + 0x38]
cmp eax, 0x400
jne 0x140080553
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x140080546
mov rcx, rbx
call fcn.1400810c0
mov rcx, rbx
call fcn.1400807e0
mov rax, qword [rsp + 0x38]
cmp eax, 0x401
jne 0x140080581
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x14008059a
mov rdi, qword [rsp + 0x48]
test rdi, rdi
je 0x14008059a
mov rcx, rbx
call fcn.140080970
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEvent]
jmp 0x14008059a
cmp eax, 0x402
jne 0x14008059a
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x14008059a
mov rcx, rbx
call fcn.140080b30
lea rcx, [rsp + 0x30]
call rbp
lea rcx, [rsp + 0x30]
call r14
lea rcx, [rsp + 0x30]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call r15
test eax, eax
jne 0x1400804d0
mov rsi, qword [rsp + 0xb0]
mov r13, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0xb8]
mov r14, qword [rsp + 0x78]
mov rbp, qword [rsp + 0xa8]
mov r15, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1400bcae0
add rsp, 0x90
pop rbx
ret