Function at 0x1400577f0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x860]
sub rsp, 0x960
mov rax, qword [0x1400bba20]
xor rax, rsp
mov qword [rbp + 0x850], rax
mov rsi, r9
mov rbx, r8
mov rdi, rdx
mov r14, rcx
test rdx, rdx
je 0x140057b7f
test rbx, rbx
je 0x140057b7f
xor edx, edx
lea rcx, [rbp + 0x50]
mov r8d, 0x400
call main
mov r8, rdi
lea rcx, [rbp + 0x50]
mov edx, 0x3ff
call fcn.14005f208
mov r8, rbx
lea rcx, [rbp + 0x50]
mov edx, 0x3ff
call fcn.14005f340
lea rcx, [rbp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140057b7f
test al, 0x10
je 0x140057b7f
mov eax, dword [r14 + 0x50]
lea rcx, [rbp + 0x50]
cmp eax, 1
jne 0x140057957
lea rdx, str.RoomConnector.exe
call fcn.140057730
lea rdx, str.gateway_conf_client.dll
mov ebx, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
lea rdx, str.gmcm.dll
mov r14d, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
lea rdx, str.gviper.dll
mov edi, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
test ebx, ebx
je 0x140057b7f
test r14d, r14d
je 0x140057b7f
test edi, edi
je 0x140057b7f
test eax, eax
je 0x140057b7f
xor ebx, ebx
lea rcx, [rsp + 0x38]
xor edx, edx
mov dword [rsp + 0x30], ebx
mov r8d, 0x104
mov byte [rbp + 0x3c], bl
mov qword [rbp + 0x3e], rbx
mov dword [rbp + 0x48], ebx
call main
mov edx, 0x104
mov dword [rsp + 0x34], 1
lea rcx, [rbp + 0x50]
call fcn.14005e544
inc rax
cmp rax, 0x104
jae 0x140057a69
lea r8, [rbp + 0x50]
mov edx, 0x104
lea rcx, [rsp + 0x38]
call fcn.14005f208
jmp 0x140057b72
cmp eax, 2
jne 0x140057993
lea rdx, str.Controller.exe
call fcn.140057730
lea rdx, str.Cmmlib.dll
mov ebx, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
lea rdx, str.zrc_sdk.dll
mov edi, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
test ebx, ebx
jmp 0x1400578e2
lea rdx, [0x14009fcf8]
mov qword [rsp + 0x990], r15
call fcn.140057730
lea rdx, str.zPTApp.dll
mov r15d, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
xor ebx, ebx
test eax, eax
jne 0x1400579d6
lea rdx, str.zChatApp.dll
lea rcx, [rbp + 0x50]
call fcn.140057730
mov edi, ebx
test eax, eax
je 0x1400579db
mov edi, 1
lea rdx, str.zVideoApp.dll
lea rcx, [rbp + 0x50]
call fcn.140057730
lea rdx, str.Cmmlib.dll
mov r14d, eax
lea rcx, [rbp + 0x50]
call fcn.140057730
test r15d, r15d
mov r15, qword [rsp + 0x990]
je 0x140057b7f
test edi, edi
je 0x140057b7f
test r14d, r14d
je 0x140057b7f
test eax, eax
je 0x140057b7f
xor edx, edx
mov dword [rsp + 0x30], ebx
mov r8d, 0x104
mov byte [rbp + 0x3c], bl
lea rcx, [rsp + 0x38]
mov qword [rbp + 0x3e], rbx
mov dword [rbp + 0x48], ebx
call main
mov edx, 0x104
mov dword [rsp + 0x34], 1
lea rcx, [rbp + 0x50]
call fcn.14005e544
inc rax
cmp rax, 0x104
jb 0x140057a70
xor eax, eax
jmp 0x140057b84
lea r8, [rbp + 0x50]
mov edx, 0x104
lea rcx, [rsp + 0x38]
call fcn.14005f208
cmp dword [rbp + 0x8b0], ebx
je 0x140057b72
xor edx, edx
lea rcx, [rbp + 0x450]
mov r8d, 0x400
call main
lea r8, [rsp + 0x38]
mov edx, 0x3ff
lea rcx, [rbp + 0x450]
call fcn.14005f208
lea r8, [0x14009cf34]
mov edx, 0x3ff
lea rcx, [rbp + 0x450]
call fcn.14005f340
lea r8, [0x14009fcf8]
mov edx, 0x3ff
lea rcx, [rbp + 0x450]
call fcn.14005f340
mov edx, 0xfde9
lea rcx, [rbp + 0x450]
call fcn.140059210
mov rbx, rax
test rax, rax
je 0x140057b24
lea rax, [rbp + 0x44]
mov rcx, rbx
lea r9, [rbp + 0x42]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x3e]
call fcn.140056430
movzx edi, al
jmp 0x140057b5a
xor edx, edx
lea rcx, [rbp + 0x450]
call fcn.140059210
mov rbx, rax
lea r9, [rbp + 0x42]
lea rax, [rbp + 0x44]
mov rcx, rbx
lea r8, [rbp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x3e]
call fcn.140056430
movzx edi, al
test rbx, rbx
je 0x140057b6e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov byte [rbp + 0x3c], dil
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.140058260
mov eax, 1
mov rcx, qword [rbp + 0x850]
xor rcx, rsp
call fcn.140079240
add rsp, 0x960
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret