Function at 0x1400f84f0
Capabilities:
Hide graphical window

Disassembly:
mov r11, rsp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x490
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov rax, qword [0x1402e0068]
xor rax, rsp
mov qword [rsp + 0x480], rax
movzx esi, dx
mov rdi, rcx
xor r13d, r13d
mov dword [r11 - 0x428], r13d
mov eax, 0x800f
cmp r8w, ax
jne 0x1400f8fba
lea rcx, [rsp + 0x40]
call fcn.1400e7a60
nop
cmp si, 0x65
jne 0x1400f86c5
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8987
lea rdx, str.app_key
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8987
movsxd rdx, eax
add rdx, rdx
mov rax, qword [rbx + 8]
cmp qword [rax + rdx*8 + 8], r13
je 0x1400f8987
call fcn.1401008a0
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_DestroyWindow]
lea ecx, [r13 + 6]
call qword [sym.imp.USER32.dll_PostQuitMessage]
nop
cmp dword [rsp + 0x84], r13d
je 0x1400f86b4
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8660
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8660
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8660
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f8632
inc rcx
xor edx, edx
lea r8d, [r13 + 0x10]
call fcn.1401e7480
jmp 0x1400f8663
cmp al, 0x30
jne 0x1400f8653
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f8642
cmp al, 0x58
jne 0x1400f8653
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8663
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f8663
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f8692
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f867d
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8680
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f86b4
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f86a6
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f86a9
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
xor eax, eax
jmp 0x1400f9116
cmp si, 0x64
jne 0x1400f885d
mov qword [rsp + 0x90], r13
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f871a
lea rdx, str.app_win
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f871a
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
jne 0x1400f871d
mov rcx, r13
call fcn.140001d00
mov r11d, eax
mov qword [rdi + 0x2a0], r11
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x40]
call fcn.1400e7b40
mov rdx, qword [rdi + 0x158]
test rdx, rdx
je 0x1400f8755
cmp qword [rdx], 0
je 0x1400f8755
mov rdx, qword [rdx]
jmp 0x1400f8758
mov rdx, r13
mov rbx, qword [rsp + 0x90]
test rbx, rbx
je 0x1400f876d
mov rax, qword [rbx]
test rax, rax
jne 0x1400f8770
mov rax, r13
test rdx, rdx
je 0x1400f87a1
cmp byte [rdx], 0
je 0x1400f87a1
test rax, rax
je 0x1400f87b1
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400f8796
inc rax
test cl, cl
jne 0x1400f8782
mov eax, r13d
jmp 0x1400f879b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1400f87e7
jmp 0x1400f87b1
test rbx, rbx
je 0x1400f87e7
mov eax, dword [rbx + 0xc]
test eax, eax
jle 0x1400f87e7
dec eax
je 0x1400f87e7
xor r8d, r8d
mov edx, 0x8b
mov rcx, rdi
call fcn.1400f13c0
mov rax, qword [rdi + 0x150]
test rax, rax
je 0x1400f87d8
cmp qword [rax], 0
je 0x1400f87d8
mov rdx, qword [rax]
jmp 0x1400f87db
mov rdx, r13
mov rcx, qword [rdi + 0x60]
mov rax, qword [rcx]
call qword [rax + 0x18]
jmp 0x1400f882d
cmp qword [rdi + 0x2a0], 0
je 0x1400f882d
mov rax, qword [rdi + 0x150]
test rax, rax
je 0x1400f8808
cmp qword [rax], 0
je 0x1400f8808
mov rcx, qword [rax]
jmp 0x1400f880b
mov rcx, r13
call fcn.140001d00
mov r9d, eax
mov r8d, dword [rdi + 0x148]
mov edx, 0x479
mov rcx, qword [rdi + 0x2a0]
call qword [sym.imp.USER32.dll_PostMessageW]
nop
test rbx, rbx
je 0x1400f8987
dec dword [rbx + 0x10]
cmp dword [rbx + 0x10], 0
jg 0x1400f8987
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400f8850
call fcn.1401e64f8
mov rcx, rbx
call fcn.1401e60f0
jmp 0x1400f8987
cmp si, 0x66
jne 0x1400f8987
mov ecx, 1
call fcn.140100990
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_DestroyWindow]
xor ecx, ecx
call qword [sym.imp.USER32.dll_PostQuitMessage]
nop
cmp dword [rsp + 0x84], 0
je 0x1400f8976
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8922
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8922
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8922
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f88f4
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8925
cmp al, 0x30
jne 0x1400f8915
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f8904
cmp al, 0x58
jne 0x1400f8915
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8925
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f8925
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f8954
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f893f
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8942
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f8976
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8968
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f896b
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
xor eax, eax
jmp 0x1400f9116
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8b25
lea rdx, str.tray
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8b25
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8b25
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f89ed
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8a19
cmp al, 0x30
jne 0x1400f8a0e
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f89fd
cmp al, 0x58
jne 0x1400f8a0e
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8a19
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
cmp eax, 2
jne 0x1400f8b25
cmp dword [rsp + 0x84], 0
je 0x1400f8b14
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8ac0
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8ac0
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8ac0
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f8a92
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8ac3
cmp al, 0x30
jne 0x1400f8ab3
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f8aa2
cmp al, 0x58
jne 0x1400f8ab3
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8ac3
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f8ac3
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f8af2
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8add
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8ae0
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f8b14
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8b06
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8b09
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
xor eax, eax
jmp 0x1400f9116
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400f5420
test eax, eax
jne 0x1400f8c3c
cmp dword [rsp + 0x84], eax
je 0x1400f8c2b
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8bd7
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8bd7
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8bd7
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f8ba9
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8bda
cmp al, 0x30
jne 0x1400f8bca
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f8bb9
cmp al, 0x58
jne 0x1400f8bca
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8bda
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f8bda
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f8c09
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8bf4
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8bf7
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f8c2b
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8c1d
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8c20
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
xor eax, eax
jmp 0x1400f9116
mov dword [rsp + 0x84], 1
xor r9d, r9d
lea r8, str.tray
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.1400029f0
mov edx, 0xffffffec
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov r8d, eax
btr r8d, 7
bts r8d, 0x12
cmp eax, r8d
je 0x1400f8c92
mov edx, 0xffffffec
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov rdx, qword [rdi + 0x298]
test rdx, rdx
je 0x1400f8ce2
mov ecx, dword [rdx + 0xc]
sub ecx, dword [rdx + 4]
mov eax, dword [rdx + 8]
sub eax, dword [rdx]
mov dword [rsp + 0x30], 0x42
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
lea rdx, [r9 - 2]
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, qword [rdi + 0x298]
call fcn.1401e60f0
mov qword [rdi + 0x298], r13
jmp 0x1400f8d08
mov dword [rsp + 0x30], 0x43
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
lea rdx, [r9 - 2]
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_SetWindowPos]
xor edx, edx
lea rcx, [rdi + 8]
call fcn.1400e96a0
lea rcx, [rdi + 0x1a8]
xor edx, edx
call fcn.1400fb2d0
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_SetForegroundWindow]
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_InvalidateRect]
cmp si, 0x64
jne 0x1400f8eb9
lea rcx, [rdi + 0x128]
xor r8d, r8d
xor edx, edx
call fcn.1400010a0
test eax, eax
jne 0x1400f8d69
lea rcx, [rdi + 0xe8]
lea edx, [rax + 1]
call fcn.1400e30f0
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x7f]
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r12, rax
cmp qword [rdi + 0x2d0], 0
jne 0x1400f8eb9
xor edx, edx
mov r8d, 0x3d0
lea rcx, [rsp + 0xb0]
call fcn.1401e6750
mov dword [rsp + 0xb0], 0x3d0
mov rcx, qword [rdi + 8]
mov qword [rsp + 0xb8], rcx
mov dword [rsp + 0xc0], 1
mov dword [rsp + 0xc8], 0x401
mov dword [rsp + 0xc4], 1
lea rdx, [rsp + 0xb0]
mov ecx, 2
call qword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
mov rbp, qword [0x1402e4a90]
mov ebx, 0x80
or r14, 0xffffffffffffffff
nop
movsxd rcx, ebx
mov eax, 2
mul rcx
cmovo rax, r14
mov rcx, rax
call fcn.1401e74e4
mov rsi, rax
test rax, rax
je 0x1400f8e5a
mov r9d, ebx
mov r8, rax
mov edx, 0x80
mov rcx, rbp
call qword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [rbx - 1]
cmp eax, ecx
jl 0x1400f8e51
mov rcx, rsi
call fcn.1401e6538
mov rsi, r13
add ebx, ebx
cmp ebx, 0x19000
jl 0x1400f8e00
jmp 0x1400f8e5a
mov dword [rsp + 0x98], ebx
jmp 0x1400f8e62
mov dword [rsp + 0x98], r13d
mov qword [rsp + 0x90], rsi
lea rdx, str._10.1
lea rcx, [rsp + 0x90]
call fcn.1400e9c80
lea r11, [0x14023ce88]
mov rbx, qword [rsp + 0x90]
test rbx, rbx
cmovne r11, rbx
mov qword [rsp + 0x20], r11
mov r9, r12
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rdi
call fcn.1400ea7f0
nop
test rbx, rbx
je 0x1400f8eb9
mov rcx, rbx
call fcn.1401e6538
nop
cmp dword [rsp + 0x84], 0
je 0x1400f8fab
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f8f57
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f8f57
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f8f57
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f8f29
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8f5a
cmp al, 0x30
jne 0x1400f8f4a
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f8f39
cmp al, 0x58
jne 0x1400f8f4a
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f8f5a
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f8f5a
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f8f89
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8f74
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8f77
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f8fab
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f8f9d
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f8fa0
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
jmp 0x1400f9114
mov eax, 0x800a
cmp r8w, ax
jne 0x1400f9114
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_ShowWindow]
lea rcx, [rdi + 0x1a8]
xor edx, edx
call fcn.1400fb2d0
lea rcx, [rsp + 0x40]
call fcn.1400e7a60
nop
mov dword [rsp + 0x84], 1
mov r9d, 1
lea r8, str.tray
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.1400029f0
nop
cmp dword [rsp + 0x84], 0
je 0x1400f910a
mov dword [rsp + 0x84], r13d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x40]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f90b6
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f90b6
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f90b6
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f9088
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f90b9
cmp al, 0x30
jne 0x1400f90a9
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f9098
cmp al, 0x58
jne 0x1400f90a9
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f90b9
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f90b9
mov eax, r13d
and al, 9
cmp al, 1
jne 0x1400f90e8
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f90d3
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f90d6
mov rdx, r13
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.140002830
jmp 0x1400f910a
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f90fc
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f90ff
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x40]
call fcn.1400026d0
xor eax, eax
mov rcx, qword [rsp + 0x480]
xor rcx, rsp
call fcn.1401e6720
lea r11, [rsp + 0x490]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret