Function at 0x140057d60
Capabilities:
Print debug messages
Terminate process

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x30
mov rsi, rcx
lea rcx, str._plugin_update__PluginUpdateWinMain.
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
call fcn.14004d720
mov rcx, rax
test rax, rax
je 0x140057fa6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rdi, str.201200
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.140053520
mov rbx, 0xffffffffffffffff
test al, al
jne 0x140057ddd
mov rax, rbx
inc rax
cmp word [rdi + rax*2], 0
jne 0x140057dc2
mov r8d, eax
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.14005a2d0
nop
call fcn.14004d720
mov rcx, rax
test rax, rax
je 0x140057fb1
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
call fcn.14004d720
mov rcx, rax
test rax, rax
je 0x140057f9b
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x60]
call fcn.140053e90
mov rdx, qword [rsp + 0x60]
lea rcx, str.version
call fcn.140070494
mov rdx, qword [rsp + 0x20]
lea rcx, str.exename
call fcn.140070494
lea rcx, [rsp + 0x58]
call fcn.140053970
nop
mov rdx, qword [rsp + 0x58]
lea rcx, str.appname
call fcn.140070494
lea rdx, str._plugin_update
mov rax, rbx
inc rax
cmp word [rdx + rax*2], 0
jne 0x140057e74
mov r8d, eax
lea rcx, [rsp + 0x58]
call fcn.1400531d0
xor edi, edi
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x58]
call fcn.140056a00
mov rax, qword [0x1400b0d28]
test rax, rax
jne 0x140057ecf
lea rcx, str.MainFrame.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1400b0d28], rax
test rax, rax
jne 0x140057ecf
lea rcx, str._plugin_update__Load_MainFrame_fail.
jmp 0x140057ef9
lea rdx, str.PluginUpdaterStartup
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140057ef2
mov rcx, rsi
call rax
test eax, eax
jne 0x140057eff
lea edi, [rax + 1]
jmp 0x140057eff
lea rcx, str._plugin_update__Get_function_PluginUpdaterStartup_fail.
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call qword [sym.imp.ole32.dll_CoUninitialize]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140057f36
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140057f55
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140057f74
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
sub ebx, 1
jg 0x140057f91
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
mov eax, edi
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
mov ecx, 0x80004005
call fcn.1400534d0
nop
mov ecx, 0x80004005
call fcn.1400534d0
nop
mov ecx, 0x80004005
call fcn.1400534d0
int3