Function at 0x140037490
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov r13, r9
mov ebx, r8d
mov r12, rcx
movaps xmmword [rax - 0x68], xmm8
cmp r8d, 0x21
jne 0x1400374df
test byte [0x140117e04], 0x50
je 0x140037596
lea eax, [r8 - 0x1d]
jmp 0x140037fa3
cmp ebx, 0x453
jne 0x140037596
lea rcx, [rsp + 0x88]
mov edx, 0x19000
call fcn.14005a1c4
mov rbx, qword [rsp + 0x88]
xor esi, esi
mov word [rbx], si
mov dword [rbx + 0x31ffc], esi
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x7c]
lea r8, str.Text.Paramd
lea rdx, str.SOFTWAREPELOGON
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x7c], esi
mov dword [rsp + 0x80], 0x31ffe
mov qword [rsp + 0x20], rbx
call fcn.1400533dc
cmp eax, esi
je 0x140037557
mov word [rbx], si
mov rdx, rbx
mov rcx, r12
call fcn.14002ca50
mov rcx, qword [rsp + 0x178]
xor edx, edx
mov rbx, rax
bts rbx, 0xc
mov r8, rbx
or r8, 0x10
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
lea rcx, [rsp + 0x88]
call fcn.140052160
mov rax, rbx
jmp 0x140037fa3
call qword [sym.imp.USER32.dll_GetDesktopWindow]
xor esi, esi
mov rbp, rax
mov eax, dword [0x140118218]
cmp eax, esi
je 0x1400375d8
cmp eax, ebx
jne 0x1400375d8
mov rax, qword [0x140117e38]
cmp rax, rsi
je 0x1400375df
cmp rbp, rsi
je 0x1400375df
mov rcx, qword [rsp + 0x178]
mov rdx, rbp
mov qword [0x140117e38], rbp
call qword [sym.imp.USER32.dll_SetParent]
mov rax, qword [0x140117e38]
mov r14d, 0x110
mov r15d, 0x44f
cmp ebx, r14d
je 0x140037623
cmp ebx, r15d
je 0x140037623
cmp rbp, rsi
je 0x140037623
cmp rax, rsi
je 0x140037623
cmp rax, rbp
je 0x140037623
mov rcx, qword [rsp + 0x178]
mov rdx, rbp
mov qword [0x140117e38], rbp
call qword [sym.imp.USER32.dll_SetParent]
mov rax, qword [0x140117e38]
mov edi, 1
cmp ebx, r14d
ja 0x140037c13
je 0x140037963
cmp ebx, 5
je 0x140037945
cmp ebx, 0xf
je 0x140037846
cmp ebx, 0x14
je 0x14003767a
cmp ebx, 0x21
je 0x140037661
cmp ebx, 0x7e
je 0x140037c3e
jmp 0x140037dd8
mov al, byte [0x140117e04]
and al, 0x50
neg al
sbb rax, rax
and rax, 3
inc rax
jmp 0x140037fa3
mov qword [rsp + 0x98], rsi
cmp qword [0x140117e08], rsi
je 0x140037836
lea rdx, [rsp + 0x98]
mov rcx, r13
call qword [0x140117cd0]
cmp eax, esi
jne 0x140037836
mov ebx, dword [0x140117e18]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov r13d, dword [0x140117e1c]
mov ecx, edi
mov dword [0x140117e18], eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebp, dword [0x140117e18]
mov r12d, eax
mov dword [0x140117e1c], eax
cmp ebx, ebp
jne 0x1400376e6
mov r14d, esi
cmp r13d, eax
je 0x1400376e9
mov r14d, edi
test byte [0x140117e04], 0x40
mov r15d, esi
mov r13d, esi
je 0x140037737
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, edi
mov r15d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0x3d
mov r12d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0x3e
mov ebp, 0x12c
add r15d, 0xfffffed4
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea r13d, [rax - 0x50]
sub r12d, r13d
cmp r14d, esi
je 0x140037763
mov rcx, qword [rsp + 0x178]
mov dword [rsp + 0x30], 0x16
mov r9d, r13d
mov r8d, r15d
xor edx, edx
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], ebp
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, qword [0x140117e08]
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], esi
mov dword [rsp + 0x180], esi
call qword [0x140117d18]
mov rcx, qword [0x140117e08]
lea rdx, [rsp + 0x180]
call qword [0x140117d20]
movsxd rcx, dword [0x140117e1c]
mov r11d, dword [rsp + 0x180]
mov r10d, dword [rsp + 0x70]
movsxd rbx, dword [0x140117e18]
xor edx, edx
movsxd rax, r12d
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], rsi
mov dword [rsp + 0x50], 2
imul rax, r11
div rcx
xor edx, edx
mov rdi, rax
movsxd rax, ebp
mov dword [rsp + 0x48], edi
imul rax, r10
div rbx
xor edx, edx
mov r9, rax
movsxd rax, r13d
mov dword [rsp + 0x40], r9d
xor r9d, r9d
imul rax, r11
div rcx
mov rcx, qword [rsp + 0x98]
mov r8, rax
xor edx, edx
movsxd rax, r15d
mov dword [rsp + 0x38], r8d
xor r8d, r8d
imul rax, r10
div rbx
mov rdx, qword [0x140117e08]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], ebp
call qword [0x140117d28]
mov ecx, 5
call qword [sym.imp.GDI32.dll_GetStockObject]
jmp 0x140037fa3
cmp rax, rsi
je 0x140037868
cmp rax, rbp
je 0x140037868
mov rcx, qword [rsp + 0x178]
mov rdx, rbp
mov qword [0x140117e38], rbp
call qword [sym.imp.USER32.dll_SetParent]
mov rcx, qword [rsp + 0x178]
lea rdx, [rsp + 0xb0]
call qword [sym.imp.USER32.dll_BeginPaint]
cmp byte [0x140117c46], sil
jne 0x140037912
cmp byte [0x140117c43], sil
je 0x1400378d4
cmp byte [0x140117e05], sil
je 0x1400378c4
mov rcx, qword [rsp + 0x178]
lea rax, [rsp + 0xa0]
lea rdx, [rsp + 0xa0]
mov qword [0x140117e20], rax
call qword [sym.imp.USER32.dll_GetClientRect]
jmp 0x1400378e2
lea rax, [0x140115208]
mov qword [0x140117e20], rax
jmp 0x1400378e2
lea rdx, [0x140117e10]
mov qword [0x140117e20], rdx
mov ecx, dword [0x140122008]
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, qword [0x140117e20]
mov rcx, qword [rsp + 0xb0]
mov r8, rax
mov rbx, rax
call qword [sym.imp.USER32.dll_FillRect]
mov rcx, rbx
call qword [sym.imp.GDI32.dll_DeleteObject]
mov r8, qword [rsp + 0x178]
mov rdx, qword [rsp + 0xb0]
mov rcx, r12
call fcn.1400177f4
mov rcx, qword [rsp + 0x178]
lea rdx, [rsp + 0xb0]
call qword [sym.imp.USER32.dll_EndPaint]
jmp 0x140037dd8
cmp r13, rdi
jne 0x140037dd8
mov rcx, qword [rsp + 0x178]
mov edx, edi
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x140037dd8
call fcn.140057eec
mov rcx, qword [rsp + 0x178]
mov ebx, 0xffffffec
mov edx, ebx
call qword [sym.imp.USER32.dll_GetWindowLongPtrW]
mov rcx, qword [rsp + 0x178]
mov edx, ebx
bts rax, 0x1b
mov r8, rax
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
lea r12, [0x140118f08]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea r8, str.LogohWnd
lea rdx, str.SOFTWAREPELOGON
mov rcx, 0xffffffff80000002
call fcn.140053510
lea rax, [rsp + 0x178]
lea r9d, [rbx + 0x1f]
lea r8, str.LogohWnd
lea rdx, str.SOFTWAREPELOGON
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x28], 8
mov qword [rsp + 0x20], rax
call fcn.14005349c
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r11b, byte [0x140117a98]
and r11b, 0xc
cmp r11b, 8
jne 0x140037a1c
mov rcx, qword [rsp + 0x178]
xor edx, edx
call qword [sym.imp.USER32.dll_EnableWindow]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, edi
mov dword [0x140117e18], eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x140117e1c], eax
cmp byte [0x140117e05], sil
je 0x140037a7b
mov eax, dword [0x140115214]
mov r9d, dword [0x14011520c]
mov r8d, dword [0x140115208]
mov rcx, qword [rsp + 0x178]
mov dword [rsp + 0x30], 0x14
mov dword [rsp + 0x28], eax
mov eax, dword [0x140115210]
xor edx, edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_SetWindowPos]
mov qword [0x140117e38], 0xffffffffffffeffb
cmp rbp, rsi
je 0x140037aa3
mov rcx, qword [rsp + 0x178]
mov rdx, rbp
mov qword [0x140117e38], rbp
call qword [sym.imp.USER32.dll_SetParent]
cmp byte [0x140115219], sil
movzx eax, word [0x14011521c]
mov ecx, 3
lea r9d, [rcx - 1]
mov ebx, 0xff
cmovge r9d, ecx
cmp ax, si
jl 0x140037aca
sub bl, al
mov edx, dword [0x140122008]
mov rcx, qword [rsp + 0x178]
or r9d, 2
mov r8b, bl
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
test byte [0x140117e04], 0x40
mov ebp, dword [0x140117e18]
mov r13d, dword [0x140117e1c]
mov r14d, esi
mov ebx, esi
je 0x140037b3e
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, edi
mov r14d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0x3d
mov r13d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0x3e
mov ebp, 0x12c
add r14d, 0xfffffed4
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea ebx, [rax - 0x50]
sub r13d, ebx
mov rcx, qword [rsp + 0x178]
mov r9d, ebp
mov r8d, ebx
mov edx, r14d
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r13d
call qword [sym.imp.USER32.dll_MoveWindow]
mov r11b, byte [0x140117e04]
mov al, byte [0x140117e03]
mov rcx, qword [rsp + 0x178]
and r11b, 0x10
neg al
sbb rdx, rdx
cmp r11b, sil
mov r9d, ebx
cmovne rdx, rdi
mov edi, 0x11
mov r8d, r14d
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], ebp
call qword [sym.imp.USER32.dll_SetWindowPos]
cmp eax, esi
jne 0x140037bc8
mov rcx, qword [rsp + 0x178]
mov dword [rsp + 0x30], edi
mov r9d, ebx
mov r8d, r14d
xor edx, edx
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], ebp
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11, qword [rsp + 0x178]
mov rcx, r12
mov qword [0x140117de0], r11
mov qword [0x140117de8], r11
mov byte [0x140117e02], 2
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [rsp + 0x178]
xor r9d, r9d
xor r8d, r8d
mov edx, r15d
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x140037dd8
mov eax, ebx
sub eax, 0x111
je 0x140037db2
sub eax, 0x103
je 0x140037daa
sub eax, 0x23b
je 0x140037d9a
cmp eax, edi
jne 0x140037dd8
lea r12, [0x140118f08]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp ebx, 0x450
jne 0x140037ce4
lea rcx, [rsp + 0x90]
mov edx, 0x20a
call fcn.14005a1c4
mov rbx, qword [rsp + 0x90]
lea rax, [rsp + 0x78]
mov word [rbx], si
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x74]
lea r8, str.LogoFile
lea rdx, str.SOFTWAREPELOGON
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x74], esi
mov dword [rsp + 0x78], 0x412
mov qword [rsp + 0x20], rbx
call fcn.1400533dc
mov ecx, esi
mov word [rbx + 0x410], si
cmp eax, esi
sete cl
cmp ecx, esi
je 0x140037cd7
cmp word [rbx], si
je 0x140037cd7
lea rcx, [0x140118090]
mov rdx, rbx
call fcn.140064e2c
lea rcx, [rsp + 0x90]
call fcn.140052160
mov rbx, qword [0x140118090]
cmp rbx, rsi
je 0x140037d26
cmp word [rbx], si
je 0x140037d26
mov rcx, qword [0x140117e08]
cmp rcx, rsi
je 0x140037d0e
call qword [0x140117cc8]
mov qword [0x140117e08], rsi
mov rax, qword [0x140117ce0]
cmp rax, rsi
je 0x140037d26
lea rdx, [0x140117e08]
mov rcx, rbx
call rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, edi
mov dword [0x140117e18], eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x140117e1c], eax
cmp byte [0x140117e05], sil
jne 0x140037d80
mov rcx, qword [rsp + 0x178]
mov dword [rsp + 0x30], 0x10
mov dword [rsp + 0x28], eax
mov eax, dword [0x140117e18]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, qword [rsp + 0x178]
lea rdx, [0x140117e10]
mov r8d, edi
call qword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x140037da1
mov byte [0x140117e02], 7
mov byte [0x140117e02], sil
jmp 0x140037dd8
mov rax, rsi
jmp 0x140037fa3
lea r12, [0x140118f08]
cmp r13, 0x66
je 0x140037ef6
cmp r13, 0x67
je 0x140037ddf
cmp r13, 2
jne 0x140037dd8
test byte [0x140117a98], 0xc
je 0x140037ddf
xor eax, eax
jmp 0x140037fa3
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x1401185e8], edi
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp r13, 0x67
jne 0x140037e0d
mov rax, qword [rsp + 0x190]
cmp rax, rsi
je 0x140037e0d
mov byte [rax], sil
cmp byte [0x140115219], sil
jge 0x140037ecc
test byte [0x140117a98], 2
jne 0x140037ecc
call qword [sym.imp.KERNEL32.dll_GetTickCount]
xorps xmm7, xmm7
movss xmm8, dword [0x1400febcc]
mov r13d, eax
mov ebx, 0xff
movaps xmm6, xmm7
movaps xmm0, xmm7
mulss xmm0, dword [0x1400febc8]
divss xmm0, xmm8
cvttss2si rbp, xmm0
add ebp, r13d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, ebp
sub ecx, eax
cmp ecx, esi
jle 0x140037e99
mov rcx, qword [rsp + 0x178]
mov r8d, ebx
unpcklps xmm6, xmm6
mov r9d, 2
xor edx, edx
cvtps2pd xmm0, xmm6
addsd xmm0, qword [0x1400febc0]
cvttsd2si rax, xmm0
sub r8b, al
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
addss xmm6, dword [0x1400febbc]
addss xmm7, dword [0x1400febbc]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub ebp, eax
cmp ebp, esi
jle 0x140037ec2
mov edx, edi
mov ecx, 0xb
call qword [sym.imp.KERNEL32.dll_SleepEx]
comiss xmm8, xmm6
jae 0x140037e44
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
dec dword [0x1401185e8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [0x140117c48]
cmp rcx, rsi
je 0x140037ef6
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
and byte [0x140117a98], 0xfd
lea r8, str.LogohWnd
lea rdx, str.SOFTWAREPELOGON
mov rcx, 0xffffffff80000002
call fcn.140053510
lea rcx, [0x140118090]
mov qword [0x140117e38], rsi
mov byte [0x140115219], 0xff
call fcn.140052160
mov rcx, qword [0x140117e08]
cmp rcx, rsi
je 0x140037f4c
call qword [0x140117cc8]
mov rax, qword [0x140117de8]
mov rcx, r12
mov qword [0x140117e08], rsi
cmp rax, qword [0x140117de0]
mov qword [0x140117de0], rsi
mov byte [0x140117e05], sil
cmove rax, rsi
mov qword [0x140117de8], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov cl, byte [0x1401183fd]
call fcn.140057f20
mov rcx, qword [rsp + 0x178]
mov edx, 8
call qword [sym.imp.USER32.dll_EndDialog]
cdqe
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret