Function at 0x180005370
Capabilities:
Terminate process

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xb0
call fcn.1800546f8
mov ebx, eax
mov eax, 0x51eb851f
imul ebx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
sub ebx, ecx
inc ebx
xor r12d, r12d
mov r8d, dword [0x1800de574]
cmp r8d, 0x80368f8c
jne 0x1800054c5
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_SetWindowContextHelpId]
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateFileMappingNumaW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_DefWindowProcW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_FlashWindow]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DebugBreakProcess]
xor ecx, ecx
call qword [sym.imp.USER32.dll_OemKeyScan]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_AdjustWindowRectEx]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessPreferredUILanguages]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindClose]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_SetTimer]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_DdeAccessData]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsWindowVisible]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindFirstChangeNotificationW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsCharAlphaW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_UnregisterHotKey]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_AttachConsole]
mov r8d, dword [0x1800de574]
mov eax, 0x55555556
imul ebx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp ebx, ecx
jne 0x1800055ee
cmp r8d, 0x1b54f422
jne 0x1800055cf
xor ecx, ecx
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetAtomNameW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_IsBadWritePtr]
call qword [sym.imp.KERNEL32.dll_DebugBreak]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FlsSetValue]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ReadConsoleInputW]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_OpenFileById]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetThreadLocale]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FlsFree]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetInformationJobObject]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SleepConditionVariableSRW]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetLongPathNameTransactedW]
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualProtectEx]
mov edx, dword [rbp + 0x6f]
xor ecx, ecx
mov r9d, 4
mov r8d, 0x3000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rbx, rax
jmp 0x180005a93
test bl, 1
jne 0x1800056e9
mov rax, qword [sym.imp.KERNEL32.dll_GetProcessHeap]
add rax, 0x1df
mov qword [rbp - 0x49], rax
mov dword [rbp - 0x41], 0x1df
movaps xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 0x49], xmm0
lea rcx, [rbp - 0x49]
call fcn.18000d380
mov qword [rbp + 0x77], rax
mov dword [rbp + 0x67], 8
mov rax, qword [sym.imp.KERNEL32.dll_HeapAlloc]
add rax, 0x1bc
mov qword [rbp - 0x49], rax
mov dword [rbp - 0x41], 0x1bc
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], r12
mov qword [rbp - 0x11], r12
mov qword [rbp - 9], r12
mov qword [rbp - 1], r12
mov ecx, 0x10
call fcn.18004e89c
mov qword [rax + 8], r12
mov qword [rbp - 0x21], rax
lea rcx, [rbp - 0x21]
mov qword [rax], rcx
mov word [rbp + 0xf], r12w
mov qword [rbp + 0x15], r12
mov qword [rbp + 0x1d], r12
xor eax, eax
mov word [rbp + 0x12], ax
mov byte [rbp + 0x14], al
mov word [rbp + 0x15], ax
mov byte [rbp + 0x17], al
mov word [rbp + 0x18], ax
mov byte [rbp + 0x1a], al
mov word [rbp + 0x1b], ax
mov byte [rbp + 0x1d], al
mov word [rbp + 0x1e], ax
mov byte [rbp + 0x20], al
mov word [rbp + 0x21], ax
mov byte [rbp + 0x23], al
mov dword [rbp - 0x25], r12d
mov dword [rbp + 0xb], r12d
movaps xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 0x49], xmm0
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x67]
lea r8, [rbp + 0x77]
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.18000fd10
mov rbx, qword [rbp - 0x31]
jmp 0x180005a78
mov ecx, 0x1574
nop
inc ecx
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea edx, [rdx + rdx*2]
cmp ecx, edx
jne 0x1800056f0
add ecx, 0x44d
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea edx, [rdx + rdx*2]
cmp ecx, edx
je 0x180005739
inc ecx
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea edx, [rdx + rdx*2]
cmp ecx, edx
jne 0x180005722
mov r8d, 0xffff8cc1
sub r8d, ecx
lea edx, [rcx + 0x8095]
mov eax, r8d
sub eax, edx
add eax, 0x4f70
sub r8d, eax
mov r11d, 0x5ece
add eax, eax
mov ecx, r8d
sub ecx, eax
sub ecx, 0xb9b1
lea edi, [rdx + 0x9e0f]
mov esi, edi
sub r11d, ecx
mov r10d, 0xffffcb2f
lea r9d, [rcx + 0x5aa]
lea r9d, [rdi + r9*2]
lea ebx, [r9 - 0xb02]
add ebx, r8d
nop
inc r10d
test r10b, 1
jne 0x180005790
lea edx, [r11 + 0x1863]
add edx, r9d
lea ecx, [r10 - 0xe45]
lea r8d, [rdx + rbx]
mov eax, 0xffffed56
sub eax, edx
add r9d, eax
lea r15d, [rdi + rdx]
sub r9d, ecx
mov ecx, 0xfffffb4f
sub ecx, r9d
lea r11d, [rbx - 0x1fec]
add r9d, 0xfffffcff
add r9d, r11d
mov eax, r9d
sub eax, r11d
add eax, 0x1d
add r15d, eax
mov eax, 0x2612
sub eax, r15d
add edi, eax
lea edx, [r10 - 0x4585]
add edx, ecx
sub ebx, esi
sub ebx, r9d
sub ebx, 0x9061
lea eax, [r8 - 0x526a]
sub r11d, eax
add edi, eax
lea r10d, [rcx + rax]
add r11d, 0x21ae
mov eax, edx
and eax, 0x80000003
jge 0x180005829
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180005837
test edx, edx
jle 0x180005837
sub edx, 0xcf4
sub r11d, r9d
sub edi, r11d
mov r8d, 0xfffff4e7
sub r8d, ebx
add edx, 0x1772
add r9d, r8d
lea esi, [r10*4]
mov eax, edx
and eax, 0x80000003
jge 0x180005867
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, 0xfffff08f
mov r10d, 0xf71
test eax, eax
cmove r10d, ecx
add r10d, edx
mov eax, 0xf4f
sub eax, r10d
add r11d, eax
mov eax, 0x55555556
imul r9d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r9d, ecx
je 0x1800058ba
nop dword [rax]
inc r9d
mov eax, 0x55555556
imul r9d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r9d, ecx
jne 0x1800058a0
lea r14d, [r9 + r9]
sub r11d, r10d
test r10b, 1
je 0x1800058d5
test r10d, r10d
jle 0x1800058d5
add r10d, 0xffffd9da
jmp 0x1800058dc
add r10d, 0x2626
add esi, 0xffff780f
sub ebx, esi
sub r11d, r10d
sub r11d, edi
mov r9d, r11d
sub r10d, ebx
sub ebx, 0x9d2
mov eax, 0xffffec58
sub eax, ebx
add esi, eax
mov eax, 0x55555556
imul r8d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
je 0x18000593a
nop word [rax + rax]
inc r8d
mov eax, 0x55555556
imul r8d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
jne 0x180005920
sub r10d, edi
add r9d, 0xe4a
sub esi, r9d
sub r9d, 0x7a5
lea eax, [r15 + 0x1fa8]
lea ecx, [rsi + r8]
sub edi, eax
sub ebx, r9d
cmp esi, 0x3ca8a5
jne 0x180005aa8
cmp edi, 0x51b5f
jne 0x180005aa8
cmp ecx, 0x3f3da7
jne 0x180005aa8
cmp r14d, 0xee3fe
jne 0x180005aa8
cmp ebx, 0xfff4c4e1
jne 0x180005aa8
cmp r9d, 0xfff25820
jne 0x180005aa8
cmp r10d, 0xd2754
jne 0x180005aa8
cmp r11d, 0xfff2517b
jne 0x180005aa8
cmp eax, 0x54b5b
jne 0x180005aa8
lea rax, [fcn.1800599bc]
add rax, 0x134
mov qword [rbp - 0x49], rax
mov dword [rbp - 0x41], 0x134
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], r12
mov qword [rbp - 0x11], r12
mov qword [rbp - 9], r12
mov qword [rbp - 1], r12
mov ecx, 0x10
call fcn.18004e89c
mov qword [rax + 8], r12
mov qword [rbp - 0x21], rax
lea rcx, [rbp - 0x21]
mov qword [rax], rcx
mov word [rbp + 0xf], r12w
mov qword [rbp + 0x15], r12
mov qword [rbp + 0x1d], r12
xor eax, eax
mov word [rbp + 0x12], ax
mov byte [rbp + 0x14], al
mov word [rbp + 0x15], ax
mov byte [rbp + 0x17], al
mov word [rbp + 0x18], ax
mov byte [rbp + 0x1a], al
mov word [rbp + 0x1b], ax
mov byte [rbp + 0x1d], al
mov word [rbp + 0x1e], ax
mov byte [rbp + 0x20], al
mov word [rbp + 0x21], ax
mov byte [rbp + 0x23], al
mov dword [rbp - 0x25], r12d
mov dword [rbp + 0xb], r12d
movaps xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 0x49], xmm0
lea r8, [rbp + 0x6f]
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.18000fb20
mov rbx, qword [rbp - 0x31]
lea rcx, [rbp - 0x21]
call fcn.180011510
mov rcx, qword [rbp - 0x21]
mov qword [rbp - 0x21], r12
mov edx, 0x10
call fcn.18004e7b0
mov rax, rbx
add rsp, 0xb0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_ExitProcess]