Function at 0x1000384a4
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, [0x100017bf8]
mov ecx, 0x10
call fcn.10005e464
xor r14d, r14d
cmp byte [0x1000b10f2], r14b
je 0x1000384ff
mov rcx, qword [0x1000b10e8]
cmp rcx, r14
je 0x1000384ff
call qword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov rcx, qword [0x1000b1078]
cmp rcx, r14
je 0x10003851d
call sub.WTSAPI32.dll_WTSUnRegisterSessionNotification
mov rcx, qword [0x1000b1078]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov r15d, 1
mov ecx, r15d
call qword [sym.imp.USER32.dll_ShowCursor]
mov rcx, qword [0x1000b10a8]
call sub.msvcrt.dll_free
mov qword [0x1000b10a8], r14
mov rcx, qword [0x1000b1060]
cmp rcx, r14
je 0x100038550
call sub.gdiplus.dll_GdiplusShutdown
cmp dword [0x1000ae8e8], r15d
jne 0x100038564
mov ecx, 0x21
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov rcx, qword [0x1000b1088]
cmp rcx, r14
je 0x100038589
call fcn.1000676a8
mov rcx, qword [0x1000b1088]
cmp rcx, r14
je 0x100038589
mov rax, qword [rcx]
mov edx, r15d
call qword [rax]
mov qword [0x1000b1088], r14
mov rbx, qword [0x1000b10c0]
cmp rbx, r14
je 0x1000385ac
mov rcx, rbx
call fcn.10003d44c
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000b10c0], r14
mov rbx, qword [0x1000b1190]
cmp rbx, r14
je 0x1000385fc
lea rcx, [rbx + 0x30]
call fcn.10004a1f0
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.10004a1f0
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000b1190], r14
mov rcx, qword [0x1000b1198]
cmp rcx, r14
je 0x100038617
mov edx, r15d
call fcn.100038948
mov qword [0x1000b1198], r14
mov rbx, qword [0x1000b10c8]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x100038659
mov rcx, qword [rbx + 0x10]
cmp rcx, r14
je 0x100038642
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbx + 0x10], r14
mov rcx, qword [rbx + 0x30]
cmp rcx, r14
je 0x100038651
call qword [sym.imp.msvcrt.dll_free]
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000b10c8], r14
mov rbx, qword [0x1000b10d0]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x1000386d4
mov ebp, r14d
cmp dword [rbx], r14d
jbe 0x1000386bd
mov rsi, r14
mov rax, qword [rbx + 0x10]
mov rdi, qword [rsi + rax]
cmp rdi, r14
je 0x1000386b2
mov r12, qword [rdi + 8]
cmp r12, r14
je 0x1000386a2
mov rcx, r12
call fcn.1000653f4
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 0x10003867c
mov rcx, qword [rbx + 0x10]
cmp rcx, r14
je 0x1000386cc
call qword [sym.imp.msvcrt.dll_free]
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000b10d0], r14
mov rbx, qword [0x1000b10b0]
mov qword [rsp + 0x68], rbx
cmp rbx, r14
je 0x100038764
mov rcx, qword [rbx + 0x2810]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.10005cf5c
mov rcx, rbx
call fcn.10005d910
nop
mov rcx, qword [rbx + 0x2860]
cmp rcx, r14
je 0x10003871a
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 0x10003873a
call qword [sym.imp.msvcrt.dll_free]
nop
lea r9, [fcn.10005d70c]
mov edx, 0x28
mov r8d, 0x100
mov rcx, rbx
call fcn.100099e94
nop
mov qword [0x1000b1cc0], r14
mov rcx, rbx
call sub.msvcrt.dll_free
mov qword [0x1000b10b0], r14
mov ebp, r14d
cmp dword [0x1000b1840], r14d
jbe 0x100038840
mov rdi, r14
mov ebx, dword [0x1000b1858]
mov rax, qword [0x1000b1838]
mov rcx, qword [rdi + rax]
mov edx, dword [rcx + 0x10]
cmp edx, r14d
je 0x100038806
mov r9d, ebx
xor r8d, r8d
lea rcx, [0x1000b1848]
call fcn.10004280c
movsxd r11, eax
mov rdx, r11
lea ecx, [rbx - 1]
cmp r11d, ecx
jae 0x1000387fe
mov r8, rdx
shl r8, 3
mov r9, rdx
shl r9, 2
mov rdx, qword [0x1000b1848]
mov ecx, dword [r9 + rdx + 4]
mov dword [r9 + rdx], ecx
mov rcx, qword [0x1000b1850]
mov rax, qword [r8 + rcx + 8]
mov qword [r8 + rcx], rax
add r11d, r15d
add r9, 4
add r8, 8
mov ebx, dword [0x1000b1858]
lea eax, [rbx - 1]
cmp r11d, eax
jb 0x1000387c5
dec ebx
mov dword [0x1000b1858], ebx
mov rax, qword [0x1000b1838]
mov rsi, qword [rdi + rax]
cmp rsi, r14
je 0x10003882d
mov rcx, qword [rsi + 8]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
mov ebx, dword [0x1000b1858]
add ebp, r15d
add rdi, 8
cmp ebp, dword [0x1000b1840]
jb 0x100038784
xor edx, edx
lea rcx, [0x1000b1830]
call fcn.10004a6ac
mov edi, r14d
cmp dword [0x1000b1858], r14d
jbe 0x1000388ab
mov rbx, r14
mov rax, qword [0x1000b1850]
mov rcx, qword [rbx + rax]
mov rcx, qword [rcx + 0x220]
cmp rcx, 0xffffffffffffffff
je 0x10003887b
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [0x1000b1850]
mov rsi, qword [rbx + rax]
cmp rsi, r14
je 0x10003889c
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 [0x1000b1858]
jb 0x10003885d
mov dword [0x1000b1858], r14d
mov edi, r14d
cmp dword [0x1000ace38], r14d
jbe 0x1000388f1
mov rbx, r14
mov rcx, qword [0x1000ace48]
mov rcx, qword [rbx + rcx]
call qword [sym.imp.GDI32.dll_RemoveFontResourceW]
mov rcx, qword [0x1000ace48]
mov rcx, qword [rbx + rcx]
call sub.msvcrt.dll_free
add edi, r15d
add rbx, 8
cmp edi, dword [0x1000ace38]
jb 0x1000388c1
mov dword [0x1000ace38], r14d
mov rcx, qword [0x1000b1068]
call qword [sym.imp.KERNEL32.dll_LocalFree]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov cl, byte [0x1000b10f2]
call fcn.10005ffcc
mov rcx, qword [0x1000b1090]
cmp rcx, r14
je 0x100038931
lea rax, [0x100014388]
mov qword [rcx], rax
call sub.msvcrt.dll_free
mov qword [0x1000b1090], r14
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_ExitProcess]