Function at 0x100041e3c
Capabilities:
Terminate process

Disassembly:
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x78], rsi
mov r13d, ecx
mov r8d, ecx
lea rdx, [0x10001a170]
mov ecx, 0x10
call fcn.100061728
xor r14d, r14d
cmp byte [0x1000aacb8], r14b
je 0x100041e97
mov rcx, qword [0x1000aacb0]
cmp rcx, r14
je 0x100041e97
call qword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov rcx, qword [0x1000aac60]
cmp rcx, r14
je 0x100041eb5
call sub.WTSAPI32.dll_WTSUnRegisterSessionNotification
mov rcx, qword [0x1000aac60]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov r15d, 1
mov ecx, r15d
call qword [sym.imp.USER32.dll_ShowCursor]
mov rcx, qword [0x1000aac90]
call sub.msvcrt.dll_free
mov qword [0x1000aac90], r14
mov rcx, qword [0x1000aac48]
cmp rcx, r14
je 0x100041ee8
call sub.gdiplus.dll_GdiplusShutdown
cmp dword [0x1000a85b0], r15d
jne 0x100041efc
mov ecx, 0x21
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov rcx, qword [0x1000aac78]
cmp rcx, r14
je 0x100041f21
call fcn.100068f04
mov rcx, qword [0x1000aac78]
cmp rcx, r14
je 0x100041f21
mov rax, qword [rcx]
mov edx, r15d
call qword [rax]
mov qword [0x1000aac78], r14
mov rbx, qword [0x1000aac30]
cmp rbx, r14
je 0x100041f44
mov rcx, rbx
call fcn.10003e9e8
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000aac30], r14
mov rbx, qword [0x1000aac20]
cmp rbx, r14
je 0x100041f94
lea rcx, [rbx + 0x30]
call fcn.100040ebc
mov dword [rbx + 0x28], r14d
mov dword [rbx + 0x2c], r14d
mov rcx, qword [rbx + 0x18]
call qword [sym.imp.msvcrt.dll_free]
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.msvcrt.dll_free]
mov qword [rbx + 0x18], r14
mov qword [rbx + 0x20], r14
mov rcx, rbx
call fcn.100040ebc
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000aac20], r14
mov rcx, qword [0x1000aad60]
cmp rcx, r14
je 0x100041faf
mov edx, r15d
call fcn.1000422e0
mov qword [0x1000aad60], r14
mov rbx, qword [0x1000aac28]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x100041ff1
mov rcx, qword [rbx + 0x10]
cmp rcx, r14
je 0x100041fda
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbx + 0x10], r14
mov rcx, qword [rbx + 0x30]
cmp rcx, r14
je 0x100041fe9
call qword [sym.imp.msvcrt.dll_free]
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000aac28], r14
mov rbx, qword [0x1000aac40]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x10004206c
mov ebp, r14d
cmp dword [rbx], r14d
jbe 0x100042055
mov rsi, r14
mov rax, qword [rbx + 0x10]
mov rdi, qword [rsi + rax]
cmp rdi, r14
je 0x10004204a
mov r12, qword [rdi + 8]
cmp r12, r14
je 0x10004203a
mov rcx, r12
call fcn.10005e260
mov rcx, r12
call sub.msvcrt.dll_free
mov rcx, qword [rdi]
call sub.msvcrt.dll_free
mov rcx, rdi
call sub.msvcrt.dll_free
add ebp, r15d
add rsi, 8
cmp ebp, dword [rbx]
jb 0x100042014
mov rcx, qword [rbx + 0x10]
cmp rcx, r14
je 0x100042064
call qword [sym.imp.msvcrt.dll_free]
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000aac40], r14
mov rbx, qword [0x1000aac98]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x1000420fc
mov rcx, qword [rbx + 0x2810]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.100067264
mov rcx, rbx
call fcn.100067c08
nop
mov rcx, qword [rbx + 0x2860]
cmp rcx, r14
je 0x1000420b2
call qword [sym.imp.msvcrt.dll_free]
nop
mov rcx, qword [rbx + 0x2848]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rbx + 0x2830]
cmp rcx, r14
je 0x1000420d2
call qword [sym.imp.msvcrt.dll_free]
nop
lea r9, [fcn.10005dd44]
mov edx, 0x28
mov r8d, 0x100
mov rcx, rbx
call fcn.10008fea8
nop
mov qword [0x1000abaa0], r14
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000aac98], r14
mov ebp, r14d
cmp dword [0x1000ab640], r14d
jbe 0x1000421d8
mov rdi, r14
mov ebx, dword [0x1000ab658]
mov rax, qword [0x1000ab638]
mov rcx, qword [rdi + rax]
mov edx, dword [rcx + 0x10]
cmp edx, r14d
je 0x10004219e
mov r9d, ebx
xor r8d, r8d
lea rcx, [0x1000ab648]
call fcn.10004d108
movsxd r11, eax
mov rdx, r11
lea ecx, [rbx - 1]
cmp r11d, ecx
jae 0x100042196
mov r8, rdx
shl r8, 3
mov r9, rdx
shl r9, 2
mov rdx, qword [0x1000ab648]
mov ecx, dword [r9 + rdx + 4]
mov dword [r9 + rdx], ecx
mov rcx, qword [0x1000ab650]
mov rax, qword [r8 + rcx + 8]
mov qword [r8 + rcx], rax
add r11d, r15d
add r9, 4
add r8, 8
mov ebx, dword [0x1000ab658]
lea eax, [rbx - 1]
cmp r11d, eax
jb 0x10004215d
dec ebx
mov dword [0x1000ab658], ebx
mov rax, qword [0x1000ab638]
mov rsi, qword [rdi + rax]
cmp rsi, r14
je 0x1000421c5
mov rcx, qword [rsi + 8]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
mov ebx, dword [0x1000ab658]
add ebp, r15d
add rdi, 8
cmp ebp, dword [0x1000ab640]
jb 0x10004211c
xor edx, edx
lea rcx, [0x1000ab630]
call fcn.100054624
mov edi, r14d
cmp dword [0x1000ab658], r14d
jbe 0x100042243
mov rbx, r14
mov rax, qword [0x1000ab650]
mov rcx, qword [rbx + rax]
mov rcx, qword [rcx + 0x220]
cmp rcx, 0xffffffffffffffff
je 0x100042213
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [0x1000ab650]
mov rsi, qword [rbx + rax]
cmp rsi, r14
je 0x100042234
mov rcx, qword [rsi + 8]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
add edi, r15d
add rbx, 8
cmp edi, dword [0x1000ab658]
jb 0x1000421f5
mov dword [0x1000ab658], r14d
mov edi, r14d
cmp dword [0x1000a6d40], r14d
jbe 0x100042289
mov rbx, r14
mov rcx, qword [0x1000a6d50]
mov rcx, qword [rbx + rcx]
call qword [sym.imp.GDI32.dll_RemoveFontResourceW]
mov rcx, qword [0x1000a6d50]
mov rcx, qword [rbx + rcx]
call sub.msvcrt.dll_free
add edi, r15d
add rbx, 8
cmp edi, dword [0x1000a6d40]
jb 0x100042259
mov dword [0x1000a6d40], r14d
mov rcx, qword [0x1000aac50]
call qword [sym.imp.KERNEL32.dll_LocalFree]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov cl, byte [0x1000aacb8]
call fcn.100060aa8
mov rcx, qword [0x1000aac80]
cmp rcx, r14
je 0x1000422c9
lea rax, [0x100014ad8]
mov qword [rcx], rax
call sub.msvcrt.dll_free
mov qword [0x1000aac80], r14
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_ExitProcess]