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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x1800e72b8]
xor rax, rsp
mov qword [rbp + 0x48], rax
mov r13, r9
mov qword [rbp - 0x68], r9
mov r9, r8
mov qword [rbp - 0x80], r8
mov r8, rdx
mov qword [rbp - 0x70], rdx
mov r14d, ecx
mov dword [rsp + 0x7c], ecx
mov r10, qword [rbp + 0xb0]
mov qword [rsp + 0x50], r10
mov rdx, qword [rbp + 0xb8]
mov qword [rsp + 0x70], rdx
xor r12d, r12d
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r12b
mov eax, ecx
mov dword [rsp + 0x60], ecx
lea r11d, [rcx + 0xe4]
mov dword [rsp + 0x40], r11d
lea r15, [0x180000000]
mov ebx, dword [rsp + 0x68]
cmp ecx, r11d
jae 0x18001d0d4
mov r11d, dword [rsp + 0x68]
mov qword [rsp + 0x58], r11
mov dword [rsp + 0x78], ebx
mov ecx, dword [rsp + 0x40]
mov edi, 0x64
mov rsi, r10
cmp eax, 0x10a
ja 0x18001cf21
je 0x18001cedd
add eax, 0xffffffce
cmp eax, 0x87
ja case.default.0x18001cb04
movzx eax, byte [r15 + rax + 0x1d494]
mov ecx, dword [r15 + rax*4 + 0x1d478]
add rcx, r15
jmp rcx
cmp qword [rdx], 0
je case.0x18001d111.8
mov r11d, dword [r13 + 0x20]
shr r11, 3
and r11d, 0x3f
mov qword [rsp + 0x58], r11
jmp case.0x18001cb04.56
movzx eax, word [0x1800d7b5c]
mov word [rbp + 0x32], ax
movzx eax, byte [0x1800d7b5e]
mov byte [rbp + 0x34], al
jmp case.0x18001cb04.56
movzx eax, word [0x1800d7b60]
mov word [rbp + 0x30], ax
movzx eax, byte [0x1800d7b62]
mov byte [rbp + 0x32], al
jmp case.0x18001cb04.56
mov rax, qword [r13]
lea rsi, [rax - 1]
test rax, rax
je case.0x18001cb04.56
mov ebx, 0x106
mov eax, ebx
sub eax, 0x106
je 0x18001ccac
sub eax, 1
je 0x18001cc7a
cmp eax, 1
jne 0x18001ccf4
lea rax, [rsi + rsi*2]
add rax, rax
movups xmm0, xmmword [r9 + rax*8]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [r9 + rax*8 + 0x10]
movups xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [r9 + rax*8 + 0x20]
movups xmmword [rbp + 0x20], xmm0
test rsi, rsi
je 0x18001ccf4
nop dword [rax]
mov edi, 0x36
lea r14, [rsi + rsi*2]
shl r14, 4
add r14, r9
imul r15, rsi, 0x94
add r15, r8
imul r12, rsi, 0x64
add r12, r10
cmp edi, 0x36
je 0x18001cc18
cmp edi, 0x912
jne 0x18001cc4c
lea rax, [rbp]
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
mov r9d, 0x133
mov r8, r12
xor edx, edx
mov rcx, r15
call fcn.1800baa90
jmp 0x18001cc4c
mov rax, qword [r13]
dec rax
cmp rsi, rax
je 0x18001cc3a
mov r9d, 0x12f
lea r8, [rbp]
lea rdx, [rbp]
mov rcx, r14
call fcn.180053eb0
dec rsi
sub r12, 0x64
sub r15, 0x94
sub r14, 0x30
add edi, 0x8dc
cmp edi, 0x11b8
jbe 0x18001cbe1
test rsi, rsi
mov r10, qword [rsp + 0x50]
mov r8, qword [rbp - 0x70]
mov r9, qword [rbp - 0x80]
jne 0x18001cbc0
mov rdx, qword [rsp + 0x70]
xor r12d, r12d
jmp 0x18001ccf4
imul rax, rsi, 0x94
movups xmm0, xmmword [rax + r8 + 0x60]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + r8 + 0x70]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + r8 + 0x80]
movups xmmword [rdx + 0x20], xmm0
imul rax, rsi, 0x64
mov dword [rax + r10 + 0x60], r12d
jmp 0x18001ccf4
imul rcx, rsi, 0x94
add rcx, r8
imul rax, rsi, 0x64
movups xmm0, xmmword [rcx]
movups xmmword [rax + r10], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + r10 + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + r10 + 0x20], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rax + r10 + 0x30], xmm0
movups xmm1, xmmword [rcx + 0x40]
movups xmmword [rax + r10 + 0x40], xmm1
movups xmm0, xmmword [rcx + 0x50]
movups xmmword [rax + r10 + 0x50], xmm0
inc ebx
cmp ebx, 0x109
jb 0x18001cb70
mov ebx, dword [rsp + 0x78]
jmp 0x18001d099
test r11d, r11d
je 0x18001ce42
mov r15d, 0x40
sub r15d, r11d
mov r14d, r15d
cmp qword [rdx], r14
jb 0x18001cdab
mov edi, 0xa0
mov qword [rsp + 0x50], rsi
mov eax, edi
sub eax, 0xa0
je 0x18001cd6c
sub eax, 1
je 0x18001cd5f
cmp eax, 1
jne 0x18001cd9c
lea rcx, [r13 + 0x28]
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov r8, r13
lea edx, [rax + 0x21]
call fcn.180057180
jmp 0x18001cd8d
sub qword [rdx], r14
add r10, r14
mov qword [rsp + 0x50], r10
jmp 0x18001cd9c
mov eax, r11d
lea rcx, [r13 + 0x28]
add rcx, rax
mov r8, r14
mov rdx, r10
call sub.VCRUNTIME140.dll_memcpy
lea ecx, [r15*8]
add qword [r13 + 0x20], rcx
mov r11, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x70]
mov r10, qword [rsp + 0x50]
inc edi
cmp edi, 0xa3
jb 0x18001cd33
jmp 0x18001ce42
mov edi, 0x78
mov eax, edi
sub eax, 0x78
je 0x18001ce05
cmp eax, 1
jne 0x18001ce2f
mov ebx, dword [rsp + 0x64]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x18001d449
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d444
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18001d444
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov eax, r11d
lea rcx, [r13 + 0x28]
add rcx, rax
mov r8, qword [rdx]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x70]
mov rax, qword [rdx]
shl rax, 3
add qword [r13 + 0x20], rax
mov r11, qword [rsp + 0x58]
inc edi
mov r10, rsi
mov qword [rsp + 0x50], rsi
cmp edi, 0x7a
jb 0x18001cdb0
cmp qword [rdx], 0x40
jb case.0x18001cb04.56
nop dword [rax]
mov edi, 3
cmp edi, 3
je 0x18001ce83
cmp edi, 0x85
je 0x18001ce75
cmp edi, 0x107
jne 0x18001ce9f
add r10, 0x40
mov qword [rsp + 0x50], r10
jmp 0x18001ce9f
add qword [r13 + 0x20], 0x200
add qword [rdx], 0xffffffffffffffc0
jmp 0x18001ce9f
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov r8, r13
lea edx, [r9 + 0x22]
mov rcx, r10
call fcn.180057180
mov rdx, qword [rsp + 0x70]
add edi, 0x82
cmp edi, 0x189
mov r10, qword [rsp + 0x50]
jb 0x18001ce55
cmp qword [rdx], 0x40
jae 0x18001ce50
jmp 0x18001d099
mov r8d, 3
lea rdx, [0x1800d7b64]
lea rcx, [rbp + 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov word [rbp + 0x37], di
jmp 0x18001d099
mov edx, 0xf4
mov rcx, qword [0x1800e7398]
call fcn.180019730
test al, al
jne 0x18001d099
mov ecx, 0x2e
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x2d
je case.0x18001d111.8
cmp eax, 1
jne 0x18001cf15
mov dword [rsp + 0x64], r12d
dec ecx
cmp ecx, 0x2c
ja 0x18001cf00
jmp 0x18001d099
sub eax, 0x11d
je 0x18001d064
sub eax, 0x13
je 0x18001cff5
sub eax, 0x13
je 0x18001cfe4
sub eax, 0x13
je 0x18001cf5f
cmp eax, 0x13
jne case.default.0x18001cb04
lea rdx, [rsp + 0x68]
mov rcx, qword [rbp - 0x40]
call sub.IMM32.dll_ImmGetCandidateListCountW
jmp 0x18001d099
mov rcx, qword [r13 + 0x28]
call qword [r13 + 0x20]
test al, al
je 0x18001cfce
mov edi, 0xd6
mov eax, edi
sub eax, 0xd4
je 0x18001cfbc
sub eax, 1
je 0x18001cfa3
cmp eax, 1
jne 0x18001cfc0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x78], eax
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 0x77]
call fcn.1800b5600
jmp 0x18001cfc0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rbp - 0x78]
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
jmp 0x18001cfc0
call qword [r13 + 0x50]
dec edi
cmp edi, 0xd3
ja 0x18001cf70
mov dword [rsp + 0x78], ebx
mov rdx, qword [0x1800e7398]
mov ecx, 0x10b
call fcn.1800553b0
jmp 0x18001d099
mov ebx, r12d
mov dword [rsp + 0x78], ebx
mov dword [rsp + 0x68], r12d
jmp case.default.0x18001cb04
mov qword [rbp - 0x40], r12
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x43
xor r9d, r9d
mov r8, r13
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.180082560
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm0
movd eax, xmm1
test al, al
jne 0x18001d099
mov edi, 0x11b
nop
mov eax, edi
sub eax, 0x11a
je case.0x18001d111.8
cmp eax, 1
jne 0x18001d058
mov rdx, qword [0x1800e7398]
mov ecx, 0x10b
call fcn.1800553b0
mov dword [rsp + 0x64], r12d
dec edi
cmp edi, 0x119
ja 0x18001d030
jmp 0x18001d099
mov byte [rsp + 0x48], 1
mov dword [rsp + 0x38], 0x92
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1800e7398]
call fcn.180059fc0
mov r11, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x60]
add eax, 0x13
mov dword [rsp + 0x60], eax
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
lea r15, [0x180000000]
cmp eax, ecx
jae 0x18001d0cf
mov r8, qword [rbp - 0x70]
mov r9, qword [rbp - 0x80]
jmp 0x18001cac9
mov r14d, dword [rsp + 0x7c]
lea edi, [r14 + 0xc]
mov dword [rsp + 0x60], edi
cmp r14d, edi
jae case.0x18001d111.8
lea r12d, [r14 - 0x32]
movzx esi, byte [rsp + 0x48]
nop
cmp r12d, 0xd8
ja case.0x18001d111.10
movzx eax, byte [r15 + r12 + 0x1d550]
mov ecx, dword [r15 + rax*4 + 0x1d51c]
add rcx, r15
jmp rcx
mov dword [rbp + 0x3a], 0x6e6922
mov dword [rbp + 0x3d], 0x227469
jmp case.0x18001d111.10
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
lea rax, [rbp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18001d145
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x40]
call fcn.18002e300
nop
lea r15, [rbp - 0x40]
mov rsi, qword [rbp - 0x40]
mov r13, qword [rbp - 0x28]
cmp r13, 0x10
cmovae r15, rsi
mov r14, qword [rbp - 0x30]
cmp r14, 0x10
jae 0x18001d18c
movups xmm0, xmmword [r15]
mov qword [rbp - 8], 0xf
jmp 0x18001d20d
mov rdi, r14
or rdi, 0xf
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18001d1e0
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18001d472
mov rcx, rax
call fcn.1800bc584
mov rcx, rax
test rax, rax
je 0x18001d436
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x18001d1ee
test rcx, rcx
je 0x18001d1ec
call fcn.1800bc584
jmp 0x18001d1ee
xor eax, eax
mov qword [rbp - 0x20], rax
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 8], rdi
movups xmm0, xmmword [rbp - 0x20]
mov edi, dword [rsp + 0x60]
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x10], r14
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x18001d250
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001d24b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d436
call fcn.1800bc5c0
movups xmm0, xmmword [rbp - 0x40]
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x50], xmm0
cmp r13, 0x10
jb 0x18001d297
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18001d28f
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001d43d
mov rcx, rsi
call fcn.1800bc5c0
mov sil, 1
mov r13, qword [rbp - 0x68]
mov r14d, dword [rsp + 0x7c]
jmp case.0x18001d111.10
mov r8d, 3
lea rdx, [0x1800cd9f0]
lea rcx, [rbp + 0x38]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp case.0x18001d111.10
test sil, sil
je 0x18001d2d2
mov rcx, qword [rbp - 0x80]
call sub.IMM32.dll_ImmDestroyContext
mov r9d, 0x121
lea r8, [rbp - 0x60]
xor edx, edx
mov rcx, qword [0x1800e7390]
call fcn.18004eed0
mov byte [rsp + 0x64], al
jmp case.0x18001d111.10
cmp qword [rdx], 0
jbe case.0x18001d111.10
mov edi, 0x56
cmp edi, 0x56
je 0x18001d31c
cmp edi, 0xe6
jne 0x18001d330
mov rax, qword [rdx]
shl rax, 3
add qword [r13 + 0x20], rax
jmp 0x18001d330
lea rcx, [r13 + 0x28]
mov r8, qword [rdx]
mov rdx, r10
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x70]
add edi, 0x90
cmp edi, 0x176
mov r10, qword [rsp + 0x50]
jb 0x18001d302
mov edi, dword [rsp + 0x60]
jmp case.0x18001d111.10
call sub.IMM32.dll_ImmCreateContext
mov qword [rbp - 0x80], rax
lea r8, [r13 + 0x48]
lea rdx, [rbp - 0x60]
mov ecx, 0xfb
call fcn.18003fc50
jmp case.0x18001d111.10
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
cmp rcx, rdx
jae 0x18001d396
lea rax, [rcx + 1]
mov qword [rbp - 0x50], rax
lea rax, [rbp - 0x60]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x60]
mov word [rax + rcx], 0x7d
jmp case.0x18001d111.10
mov r9b, 0x7d
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp - 0x60]
call fcn.180002050
jmp case.0x18001d111.10
mov eax, 0xc3
cmp eax, 0xc3
je 0x18001cdc0
add eax, 0xc7
cmp eax, 0x18a
jb 0x18001d3b0
xor ecx, ecx
movzx eax, sil
cmp qword [rbp - 0x80], rcx
cmovne ecx, eax
movzx esi, cl
jmp case.0x18001d111.10
lea rcx, [r13 + 0xa8]
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x14c
call fcn.18002f0a0
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 0x59]
lea rcx, [rbp - 0x60]
call fcn.18005ede0
inc r14d
mov dword [rsp + 0x7c], r14d
inc r12d
cmp r14d, edi
jae case.0x18001d111.8
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
lea r15, [0x180000000]
jmp 0x18001d0f0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.1800bc5c0
mov eax, ebx
mov rcx, qword [rbp + 0x48]
xor rcx, rsp
call fcn.1800bcd70
mov rbx, qword [rsp + 0x190]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1800261d0
nop
retf