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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
call qword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
or rdx, 0xffffffffffffffff
mov rcx, rax
mov r8, rdx
call qword [sym.imp.KERNEL32.DLL_SetProcessWorkingSetSize]
mov rcx, qword [0x140117df0]
xor r9d, r9d
mov r8, rbx
xor edx, edx
add rsp, 0x20
pop rbx
jmp 0x140046b80
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
mov qword [rax + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x250
xor edx, edx
mov r12, r8
lea rcx, [rax + 0x18]
lea r8d, [rdx + 5]
call fcn.1400256a8
lea rcx, [rsp + 0x290]
mov qword [rsp + 0x290], rax
call fcn.1400157dc
xor eax, eax
mov rbp, rax
mov byte [0x140118079], 0x41
call fcn.140019434
mov dword [rsp + 0x5c], eax
movzx eax, al
lea rcx, [rsp + 0x50]
mov r13w, ax
xor edi, edi
shl r13w, 8
movzx esi, di
or r13w, ax
mov dword [rsp + 0x68], r13d
call fcn.14005a150
lea rbx, [0x140117fa0]
or r15, 0xffffffffffffffff
lea r8, [0x1400ff870]
mov rcx, rbx
mov edx, r15d
call fcn.14005d1d8
lea rcx, [rsp + 0xc0]
call fcn.14005a150
mov rcx, qword [0x1401179a0]
lea r9, [rsp + 0xc0]
lea r8, [0x1400ff858]
lea edx, [rbp + 0x64]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0x20], rdi
call fcn.14001c914
lea r14d, [rbp + 1]
lea rcx, [rsp + 0xc0]
mov edx, r14d
call fcn.1400c9f94
mov r11, qword [rsp + 0xc0]
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0xb8], r11
call fcn.1400157dc
cmp qword [rsp + 0xc8], 4
mov rcx, qword [rsp + 0xb8]
jg 0x140046cb3
mov word [r11], di
mov word [rcx], di
mov r11, qword [rsp + 0xc0]
cmp word [rcx], di
je 0x140046dd3
lea rdx, [0x1400ff848]
mov r8d, pe_nt_image_headers64
mov rcx, rbx
call fcn.140024f8c
mov rbx, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rdi
mov dil, byte [0x140115218]
lea rcx, [rsp + 0x100]
mov rdx, r12
mov qword [rsp + 0xb8], rbx
mov byte [0x140115218], r14b
call fcn.140064d14
mov r8, qword [rsp + 0x100]
mov rdx, rbx
lea rbx, [0x140117fa0]
lea r9, [0x1400f9548]
mov rcx, rbx
call fcn.1400b47f0
lea rdx, [0x1400ff830]
mov r9d, r15d
xor r8d, r8d
mov rcx, rbx
mov byte [0x140115218], dil
mov rbp, rax
call fcn.14001c5dc
xor edi, edi
cmp rax, rdi
je 0x140046d67
mov rdx, qword [rax]
cmp word [rdx], di
je 0x140046d5d
mov si, word [rdx]
add rdx, 2
lea rcx, [rsp + 0x50]
call fcn.140064e2c
lea rdx, [0x1400ff818]
mov r9d, r15d
xor r8d, r8d
mov rcx, rbx
call fcn.14001c5dc
cmp rax, rdi
je 0x140046dbe
mov byte [0x140117ecf], r14b
mov rax, qword [rax]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x110]
mov dword [rsp + 0x78], edi
mov qword [rsp + 0x110], rax
call fcn.14005e37c
mov r11d, dword [rsp + 0x78]
cmp r11d, edi
jle 0x140046dbe
and r11b, 0x3f
or byte [0x140117ecf], r11b
lea rcx, [rsp + 0x100]
call fcn.140052160
mov r11, qword [rsp + 0xc0]
mov rcx, r11
call fcn.140052114
lea rcx, [rsp + 0xc0]
call fcn.140052160
lea r8, [0x1400ff870]
mov edx, r14d
mov rcx, rbx
call fcn.14005d1d8
lea rcx, [rsp + 0xa0]
call fcn.14005a150
mov ecx, 0x2a
movzx r14d, r13w
shl r14d, 0x10
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rdi
lea eax, [rcx - 6]
mov rbx, rdi
mov dword [rsp + 0x58], r14d
cmp cx, si
je 0x140046ea5
cmp ax, si
je 0x140046ea5
mov rax, qword [rsp + 0x50]
cmp word [rax], di
jne 0x140046ea5
lea edx, [rcx + 0x3b]
mov rcx, qword [0x140117df0]
lea rax, [rsp + 0x58]
lea r9, [rsp + 0xa0]
lea r8, [0x1400ff758]
mov qword [rsp + 0x20], rax
call fcn.14001c914
mov r14d, dword [rsp + 0x58]
lea rcx, [rsp + 0xa0]
mov edx, r14d
or edx, 1
call fcn.1400c9f94
cmp qword [rsp + 0xa8], 4
mov rbx, qword [rsp + 0xa0]
jg 0x140046ea5
mov word [rsp + 0x5c], di
mov dword [rsp + 0x68], edi
mov r14d, edi
mov rbx, rdi
mov qword [rsp + 0x108], r12
cmp r12, rdi
je 0x140046ed7
lea rdx, [rsp + 0x108]
lea rcx, [0x1400f9f28]
mov r8d, 0x11
call fcn.1400521b4
mov byte [0x140117bf0], 1
cmp eax, edi
jne 0x140046ede
mov byte [0x140117bf0], dil
mov rdi, qword [rsp + 0x290]
lea rcx, [0x1400f9f18]
mov r8d, 4
mov rdx, rdi
call fcn.140053674
movzx ecx, byte [0x1401178e2]
mov r13b, byte [0x140117bf0]
xor edx, edx
cmp al, dl
cmovne ecx, edx
mov byte [0x1401178e2], cl
cmp r13b, dl
jne 0x140047026
lea eax, [rdx + 0x2d]
cmp ax, si
jne 0x140046f2b
or r13b, 2
mov eax, 0x2a
cmp ax, si
jne 0x140046f5f
lea rcx, [0x140117fe0]
mov byte [0x140115218], 1
call fcn.1400c8000
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140117fa0]
add rdx, 8
call fcn.14003ce4c
jmp 0x140046fd3
mov eax, 0x24
cmp ax, si
jne 0x140046f8e
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140117fa0]
xor r9d, r9d
xor r8d, r8d
mov byte [0x140115218], 1
call fcn.1400422a0
jmp 0x140046fd3
mov rax, qword [rsp + 0x50]
cmp word [rax], dx
je 0x140046fdb
cmp rbx, rdx
jne 0x140046fdb
lea rdx, [0x1400fa108]
lea rcx, [rsp + 0x50]
mov byte [0x140115218], 1
call fcn.14005a28c
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.14005a28c
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140117fa0]
call fcn.140045210
mov rbp, rax
jmp 0x140047715
cmp word [rdi], dx
jne 0x140047026
cmp rbx, rdx
jne 0x140047026
mov rcx, qword [0x1401179a0]
mov edx, 0x12e
mov r8d, 5
call qword [sym.imp.KERNEL32.DLL_FindResourceW]
xor edi, edi
cmp rax, rdi
je 0x140047715
lea rdx, [0x1400f9548]
lea rcx, [0x140117fa0]
xor r8d, r8d
call fcn.14003dacc
movsxd rbp, eax
jmp 0x140047715
lea rcx, [rsp + 0x48]
call fcn.14005a150
xor ebp, ebp
cmp r12, rbp
jne 0x140047046
lea rcx, [rsp + 0x48]
call fcn.140052160
jmp 0x140047783
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.140029b5c
mov rax, qword [rsp + 0x48]
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0xd8]
mov r8d, 1
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe8], rbp
call fcn.1400256a8
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], rax
call fcn.1400157dc
mov rdi, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x48]
mov rsi, rdi
sub rsi, rdx
sar rsi, 1
mov qword [rsp + 0xe8], rsi
cmp rbx, rbp
je 0x1400470c1
cmp r13b, bpl
jne 0x1400470c1
mov r13b, 1
mov byte [rsp + 0x40], r13b
jmp 0x1400470c9
mov r13b, bpl
mov byte [rsp + 0x40], bpl
mov r12b, 0x10
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x90], rbp
mov byte [rsp + 0x42], 1
mov ebx, 0x20
cmp r13b, bpl
je 0x14004710e
xor edi, edi
lea rbp, [rsp + 0xa0]
mov byte [0x140115218], 1
mov byte [rsp + 0x42], dil
jmp 0x1400473f2
mov rcx, qword [rsp + 0xa0]
call fcn.140052114
lea rcx, [rsp + 0xa0]
call fcn.140052160
mov ax, bp
mov word [rsp + 0x5c], bp
mov dword [rsp + 0x68], eax
mov eax, 0x2f
mov r14d, ebp
cmp ax, word [rdi]
jne 0x14004716c
movzx eax, word [rdi + 2]
mov ecx, 0x6c
or ax, bx
cmp cx, ax
jne 0x14004716c
lea eax, [rcx - 0x63]
cmp ax, word [rdi + 4]
ja 0x140047162
cmp word [rdi + 4], 0xd
jbe 0x140047168
cmp bx, word [rdi + 4]
jne 0x14004716c
mov bpl, byte [rdi + 2]
xor ecx, ecx
mov qword [rsp + 0x70], rcx
cmp bpl, cl
je 0x14004719c
mov word [rdi + 2], bx
mov word [rdi], bx
add rdi, 4
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], rdi
call fcn.1400157dc
mov rdi, qword [rsp + 0x60]
jmp 0x14004729e
mov eax, 0x22
mov qword [rsp + 0x118], rcx
lea rdx, [rsp + 0x118]
cmp ax, word [rdi]
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xf0], rdi
sete bl
xor r8d, r8d
call fcn.1400256a8
mov rdx, qword [rsp + 0xf0]
lea rcx, [rsp + 0xe0]
sub rax, rdx
sar rax, 1
mov r8, rax
call fcn.140064d38
mov rcx, qword [rsp + 0xe0]
call fcn.1400dcf68
mov r12d, eax
xor eax, eax
cmp bl, al
je 0x140047235
cmp r12d, eax
je 0x140047223
lea ecx, [rax + 9]
cmp cx, word [rdi + 2]
ja 0x140047218
cmp word [rdi + 2], 0xd
jbe 0x140047223
mov ecx, 0x20
cmp cx, word [rdi + 2]
jne 0x140047235
mov rcx, rdi
call fcn.140019d38
mov rdi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
cmp r12d, eax
je 0x14004728e
mov rcx, rdi
call qword [sym.imp.KERNEL32.DLL_lstrlenW]
lea ebx, [rax + 1]
lea ecx, [rbx + 0xc]
movsxd rdx, ecx
lea rcx, [rsp + 0x70]
call fcn.14005a250
mov rcx, qword [rsp + 0x70]
lea rdx, [0x1400ff808]
mov r8d, 0xc
call fcn.14001b7a8
mov rcx, qword [rsp + 0x70]
movsxd r8, ebx
add r8, r8
mov rdx, rdi
add rcx, 0xa
call fcn.14001b7a8
mov rdi, qword [rsp + 0x70]
mov qword [rsp + 0x60], rdi
lea rcx, [rsp + 0xe0]
call fcn.140052160
mov r12b, 0x10
mov rcx, rdi
call qword [sym.imp.KERNEL32.DLL_lstrlenW]
movsxd rbx, eax
lea ecx, [rbx + 3]
movsxd rdx, ecx
lea rcx, [rsp + 0x80]
call fcn.14005a250
mov rcx, qword [rsp + 0x80]
lea r11d, [rbx + 1]
movsxd r8, r11d
mov rdx, rdi
add r8, r8
call fcn.14001b7a8
mov rax, qword [rsp + 0x80]
mov rcx, rbx
xor ebx, ebx
mov word [rax + rcx*2 + 2], bx
cmp bpl, bl
je 0x1400473d5
mov rcx, qword [rsp + 0x80]
call fcn.14005511c
mov r11, qword [rsp + 0x80]
movzx eax, word [r11]
mov rdi, r11
mov qword [rsp + 0xd8], r11
cmp ax, bx
je 0x14004733d
lea ecx, [rbx + 0xa]
cmp ax, 0xd
je 0x140047335
cmp ax, cx
je 0x140047335
add rdi, 2
mov ax, word [rdi]
cmp ax, bx
jne 0x14004731e
mov qword [rsp + 0xd8], rdi
mov rbx, rdi
lea rcx, [rsp + 0x48]
sub rbx, r11
sar rbx, 1
movsxd r12, ebx
lea r13, [r12 + rsi]
lea rdx, [r13 + 1]
call fcn.14005a250
xor r10d, r10d
cmp ebx, r10d
jle 0x1400473cd
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x80]
add r12, r12
lea rcx, [rax + rsi*2]
mov r8, r12
call fcn.14001b7a8
mov rax, qword [rsp + 0x48]
mov word [rax + r13*2], r10w
cmp bpl, 0x4c
jne 0x1400473cd
mov rcx, rdi
call qword [sym.imp.KERNEL32.DLL_lstrlenW]
mov rcx, qword [rsp + 0x80]
mov rdx, rdi
inc eax
cdqe
lea r11, [rax + rax]
mov r8, r11
call fcn.14001b760
mov rcx, qword [rsp + 0x80]
mov r8, r12
add rcx, r11
xor edx, edx
call fcn.1400dd9e0
mov r12b, r14b
jmp 0x1400473d0
mov r12b, r10b
mov r13b, byte [rsp + 0x40]
lea rcx, [rsp + 0x70]
lea rbp, [rsp + 0x80]
or r12b, 1
call fcn.140052160
mov rdx, qword [rsp + 0x48]
xor edi, edi
mov rbx, qword [rbp]
lea rsi, [0x140117fa0]
mov r8d, 1
mov rcx, rsi
mov qword [rsp + 0x98], rbx
call fcn.1400683c0
cmp r13b, dil
je 0x140047427
mov r8d, 0x10040
lea rdx, [0x1400fd450]
jmp 0x140047489
lea rcx, [rsp + 0x98]
call fcn.1400157dc
mov rbx, qword [rsp + 0x98]
mov rcx, rbx
call qword [sym.imp.KERNEL32.DLL_lstrlenW]
movsxd rcx, eax
lea rax, [rbx + rcx*2 - 2]
cmp rax, rbx
jb 0x14004747c
mov ecx, 9
lea r15d, [rcx + 0x17]
cmp cx, word [rax]
ja 0x140047466
cmp word [rax], 0xd
jbe 0x14004746c
cmp r15w, word [rax]
jne 0x140047478
mov word [rax], di
sub rax, 2
cmp rax, rbx
jae 0x14004745b
or r15, 0xffffffffffffffff
mov r8d, pe_nt_image_headers64
lea rdx, [0x1400ff7f0]
mov rcx, rsi
call fcn.140024f8c
mov rax, rbx
xor r13d, r13d
sub rax, qword [rbp]
sar rax, 1
cmp eax, r13d
jle 0x1400474c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.DLL_lstrlenW]
mov rcx, qword [rbp]
mov rdx, rbx
movsxd r8, eax
lea r8, [r8 + r8 + 2]
call fcn.14001b760
mov rbx, qword [rbp]
lea rdx, [0x1400ff7e4]
lea rcx, [rsp + 0xf8]
call fcn.140064d14
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.1400162e8
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.140016cc8
mov esi, dword [rsp + 0x68]
lea rcx, [rsp + 0x160]
movzx edi, si
mov qword [rsp + 0x1a0], r13
mov edx, edi
call fcn.140058128
lea rcx, [rsp + 0x160]
xor r8d, r8d
mov rdx, rbx
mov word [rsp + 0x1a8], si
call fcn.1400252dc
mov rcx, qword [rbp]
movzx edx, si
call fcn.14001941c
lea r9, [rsp + 0xf8]
xor edx, edx
mov ebx, eax
lea rax, [rsp + 0x160]
mov rcx, rbp
mov r8d, ebx
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rax
call fcn.140032e48
movzx esi, word [rsp + 0x5c]
movzx ecx, ax
lea eax, [rbx + 1]
mov edx, esi
or r14d, ecx
mov rcx, qword [rbp]
movsxd r8, eax
xor edx, edi
call fcn.1400194d0
shl esi, 0x10
and r14d, 2
lea rcx, [rsp + 0x160]
or esi, r14d
xor edx, edx
mov dword [rsp + 0x58], esi
call fcn.140044c48
lea rcx, [rsp + 0x1d0]
call fcn.140052160
lea rcx, [rsp + 0xf8]
call fcn.140052160
movsx edx, byte [rsp + 0x42]
lea r8, [0x1400ff870]
lea rcx, [0x140117fa0]
call fcn.14005d1d8
mov rdx, qword [rbp]
mov r8, qword [rsp + 0x48]
movsx eax, r12b
mov qword [rsp + 0x30], r13
lea rcx, [0x140117fa0]
and eax, 1
xor r9d, r9d
mov qword [rsp + 0x28], r13
or eax, esi
mov qword [rsp + 0x98], rdx
mov qword [rbp], r13
bts eax, 7
mov dword [rsp + 0x20], eax
call fcn.1400b49bc
mov rbp, rax
mov eax, dword [0x1401185ec]
cmp eax, r13d
je 0x14004762e
lea rcx, [0x1401185ec]
xor edx, edx
call fcn.140019b00
call fcn.14005ad18
mov r11d, dword [0x1401185e8]
cmp r11d, r13d
jle 0x140047646
mov byte [0x14011521f], r15b
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
lea ebx, [rax - 0x14]
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov r11d, dword [0x1401185e8]
cmp r11d, r13d
jle 0x1400476fe
mov r15d, 0xa
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov ecx, eax
mov edi, eax
sub ecx, ebx
cmp ecx, 1
jb 0x140047686
xor ecx, ecx
call qword [sym.imp.USER32.DLL_PostQuitMessage]
mov ebx, edi
mov r9d, r15d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], 0x4ff
call qword [sym.imp.USER32.DLL_MsgWaitForMultipleObjects]
jmp 0x1400476df
lea rcx, [rsp + 0x130]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 1
call qword [sym.imp.USER32.DLL_PeekMessageW]
cmp eax, r13d
je 0x1400476eb
lea rcx, [rsp + 0x130]
call qword [sym.imp.USER32.DLL_TranslateMessage]
lea rcx, [rsp + 0x130]
call qword [sym.imp.USER32.DLL_DispatchMessageW]
mov r11d, dword [0x1401185e8]
cmp r11d, r13d
jg 0x1400476a0
mov eax, dword [0x1401185e8]
cmp eax, r13d
jg 0x14004766b
or r15, 0xffffffffffffffff
lea rcx, [rsp + 0x80]
call fcn.140052160
lea rcx, [rsp + 0x48]
call fcn.140052160
mov rcx, qword [rsp + 0xa0]
call fcn.140052114
lea rcx, [0x140118660]
call fcn.14005282c
lea rcx, [0x140118a90]
call fcn.14005286c
lea rcx, [0x140117fe0]
call fcn.1400c8000
call fcn.140019a54
mov rax, qword [0x1400ff7d8]
lea r11, [rsp + 0x120]
lea rdx, [rsp + 0x128]
lea rcx, [0x140117fa0]
mov qword [r11], rax
movzx eax, word [0x1400ff7e0]
mov r8, r15
mov word [r11 + 8], ax
call fcn.1400285d0
mov r15, rbp
lea rcx, [rsp + 0xa0]
call fcn.140052160
lea rcx, [rsp + 0x50]
call fcn.140052160
lea r11, [rsp + 0x250]
mov rax, r15
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret