Function at 0x1400f9660
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x1403b7c30]
mov rax, qword gs:[0x58]
mov ecx, 4
mov r8, qword [rax + rdx*8]
mov eax, dword [rcx + r8]
cmp dword [0x1403b5970], eax
jg 0x14000e8d1
mov rdx, rbx
lea rcx, [0x1403b5920]
add rsp, 0x20
pop rbx
jmp 0x1400f9660
lea rcx, [0x1403b5970]
call fcn.14010a3e8
cmp dword [0x1403b5970], 0xffffffff
jne 0x14000e8bd
lea r8, [0x140145440]
lea rdx, str.GPLib.dll
lea rcx, [0x1403b5920]
call fcn.1400f8cd0
lea rcx, [0x140141060]
call fcn.14010a248
nop
lea rcx, [0x1403b5970]
call fcn.14010a388
jmp 0x14000e8bd
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov r12, rdx
mov rdi, rcx
lea rbx, [rcx + 0x28]
mov rcx, rbx
cmp rdx, 0xffffffffffffffff
jne 0x1400f96c5
mov qword [rbp + 0xc8], rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov rcx, qword [rdi + 0x18]
xor esi, esi
test rcx, rcx
je 0x1400f96b1
call fcn.1400fb7e0
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x1400f99f8
mov qword [rbp + 0xd0], rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
cmp qword [rdi + 0x20], 0
jne 0x1400f99e4
mov r14, qword [rdi + 8]
lea rax, vtable.CVolCommonBaseWithMemManager.0
mov qword [rbp - 0x80], rax
lea r13, vtable.CVolObject.0
mov qword [rbp - 0x80], r13
xor esi, esi
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], rsi
lea rax, vtable.CWString.0
mov qword [rbp - 0x80], rax
lea rcx, [rbp - 0x60]
call fcn.1400fcc20
nop
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x30], 0xfe
mov rax, qword [0x1403ab480]
test rax, rax
jne 0x1400f9734
call fcn.1400fb210
lea rdx, [rbp - 0x80]
mov rcx, rax
call fcn.1400faf10
mov r15, rax
lea rcx, [rbp + 0x40]
call fcn.1400fcc20
nop
test r15, r15
je 0x1400f9773
lea rcx, [rbp - 0x80]
call fcn.140100bf0
mov rcx, rax
mov r9d, 0x5c
lea r8, [rbp + 0x40]
mov rdx, r14
call fcn.1400fb5d0
mov r14, rax
mov rcx, r14
call fcn.1400fb810
mov qword [rdi + 0x18], rax
test rax, rax
jne 0x1400f97f2
test r15, r15
je 0x1400f97f2
lea edx, [rax + 0x5c]
mov rcx, qword [rdi + 8]
call fcn.14010cac8
test rax, rax
je 0x1400f97f2
mov rcx, qword [rdi + 8]
call fcn.1400fb1a0
mov r8, rax
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.1400ffdc0
nop
mov rcx, rax
call fcn.140100bf0
mov rcx, rax
call fcn.1400fb810
mov qword [rdi + 0x18], rax
lea rax, [rbp]
mov qword [rbp + 0xd8], rax
lea r15, vtable.CVolMem.0
mov qword [rbp], r15
lea rcx, [rbp]
call fcn.1400fd160
nop
mov qword [rbp], r13
mov qword [rbp - 0x20], r13
jmp 0x1400f97f9
lea r15, vtable.CVolMem.0
cmp qword [rdi + 0x18], 0
jne 0x1400f9812
mov rcx, qword [rdi + 8]
cmp r14, rcx
je 0x1400f9812
call fcn.1400fb810
mov qword [rdi + 0x18], rax
mov qword [rbp + 0xc8], rsi
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400f9840
lea rdx, str.get_vol_com_dll_info
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x1400f9840
lea rcx, [rbp + 0xc8]
call rax
mov qword [rdi + 0x20], rax
lea rax, vtable.CVolCommonBaseWithMemManager.0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], rsi
lea rax, vtable.CWString.0
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x40]
call fcn.1400fcc20
nop
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x70], 0xfe
cmp qword [rdi + 0x20], 0
jne 0x1400f98ae
lea rax, [0x140153110]
lea rdx, [0x140153150]
cmp qword [rdi + 0x18], 0
cmove rdx, rax
mov r8, qword [rdi + 8]
lea rcx, [rsp + 0x20]
call fcn.140100aa0
jmp 0x1400f9920
cmp qword [rbp + 0xc8], 0
je 0x1400f9920
cmp qword [rdi + 0x10], 0
je 0x1400f9920
lea rcx, [rbp - 0x20]
call fcn.1400fcc20
nop
mov qword [rbp + 0x10], 0x100
mov rax, qword [rdi]
lea r9, [rbp - 0x20]
mov r8, qword [rdi + 0x10]
mov rdx, qword [rbp + 0xc8]
mov rcx, rdi
call qword [rax]
test rax, rax
jle 0x1400f9903
mov r8, qword [rdi + 8]
lea rdx, [0x1401531a0]
lea rcx, [rsp + 0x20]
call fcn.140100aa0
nop
lea rax, [rbp - 0x20]
mov qword [rbp + 0xd8], rax
mov qword [rbp - 0x20], r15
lea rcx, [rbp - 0x20]
call fcn.1400fd160
nop
mov qword [rbp - 0x20], r13
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400f9934
cmp word [rax], 0
sete sil
jmp 0x1400f993e
cmp qword [rsp + 0x68], 2
setle sil
test esi, esi
jne 0x1400f998e
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rbx, rax
test rax, rax
jne 0x1400f9959
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rbx, rax
lea rcx, [rsp + 0x20]
call fcn.140100bf0
mov rdx, rax
mov r9d, reloc.WS2_32.dll_recv
lea r8, [0x140153208]
mov rcx, rbx
call qword [sym.imp.USER32.dll_MessageBoxW]
call qword [sym.imp.KERNEL32.dll_DebugBreak]
mov ecx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_ExitProcess]
lea rax, [rsp + 0x40]
mov qword [rbp + 0xd8], rax
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.1400fd160
nop
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x20], r13
mov qword [rbp + 0x40], r15
lea rcx, [rbp + 0x40]
call fcn.1400fd160
nop
mov qword [rbp + 0x40], r13
lea rax, [rbp - 0x60]
mov qword [rbp + 0x38], rax
mov qword [rbp - 0x60], r15
lea rcx, [rbp - 0x60]
call fcn.1400fd160
nop
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x80], r13
mov rax, qword [rdi + 0x20]
mov rdi, qword [rax + r12*8]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rdi
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret