Function at 0x1800b1420
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
movapd xmmword [rsp + 0xe0], xmm6
mov rax, qword [rcx]
cmp rax, 3
je 0x1800b22a1
mov rdi, rdx
mov rsi, rcx
movabs r13, 0x7fffffffffffffff
lea rbx, [rcx + 8]
cmp rax, 2
cmovne rbx, rcx
cmp eax, 2
je 0x1800b1f1b
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1800b234b
mov r14, qword [rsp + 0x30]
mov rcx, qword [0x1801fb9d0]
test rcx, rcx
jne 0x1800b14cc
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x1800b234b
mov rcx, qword [rsp + 0x30]
mov qword [0x1801fb9d0], rcx
test rcx, rcx
je 0x1800b22a1
mov rax, r14
or rax, rcx
shr rax, 0x20
je 0x1800b14e2
mov rax, r14
xor edx, edx
div rcx
jmp 0x1800b14e9
mov eax, r14d
xor edx, edx
div ecx
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1800b150d
xor edx, edx
div rcx
mov r15, rax
jmp 0x1800b1514
xor edx, edx
div ecx
mov r15d, eax
add r15, r8
mov rax, r15
shr rax, 9
movabs rcx, 0x44b82fa09b5a53
mul rcx
mov r14, rdx
mov r12, qword [rbx + 0x510]
lea rcx, [r12 + 0x10]
mov qword [rsp + 0x78], rcx
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1801fb9f0]
test rax, r13
jne 0x1800b1757
mov dword [rsp + 0x2c], 0
movzx eax, byte [r12 + 0x18]
test al, al
jne 0x1800b22a1
mov rax, qword [rbx + 0x510]
mov rax, qword [rax]
mov qword [rsp + 0xb0], rax
mov r8d, dword [rbx + 0x4e8]
cmp r8d, 0x3b9aca00
je 0x1800b1831
movzx eax, byte [rbx + 0x509]
test rax, rax
je 0x1800b15ba
cmp eax, 1
je 0x1800b15ad
cmp dword [r12 + 0x38], 0x3b9aca00
je 0x1800b15ce
cmp al, 1
je 0x1800b1648
jmp 0x1800b1831
cmp qword [rsp + 0xb0], 2
ja 0x1800b15ce
cmp byte [rbx + 0x508], 0
je 0x1800b15ad
mov byte [rbx + 0x509], 1
mov eax, dword [r12 + 0x58]
cmp eax, 0x3b9aca00
je 0x1800b22a1
mov rdx, qword [r12 + 0x50]
add rdx, qword [rbx + 0x4e0]
jb 0x1800b22a1
add r8d, eax
cmp r8d, 0x3b9aca00
jb 0x1800b1613
inc rdx
je 0x1800b22a1
add r8d, 0xc4653600
mov eax, r8d
shr eax, 9
imul rax, rax, 0x44b83
shr rax, 0x27
imul eax, eax, 0x3b9aca00
sub r8d, eax
mov rcx, qword [rbx + 0x500]
call fcn.18010a130
movzx eax, byte [rbx + 0x509]
cmp al, 1
jne 0x1800b1831
mov rbp, qword [rbx + 0x500]
mov r13, qword [rdi]
mov rcx, rbp
mov rdx, r13
call fcn.180109ef0
test al, al
jne 0x1800b1831
mov eax, dword [r12 + 0x58]
cmp eax, 0x3b9aca00
je 0x1800b22a1
mov rcx, qword [r12 + 0x50]
add rcx, qword [rbx + 0x4e0]
jb 0x1800b22a1
add eax, dword [rbx + 0x4e8]
cmp eax, 0x3b9aca00
jb 0x1800b16a2
inc rcx
je 0x1800b22a1
add eax, 0xc4653600
mov rdx, qword [rbp + 0x10]
cmp rcx, rdx
jb 0x1800b16d2
jne 0x1800b1a20
mov ecx, eax
shr ecx, 9
imul rcx, rcx, 0x44b83
shr rcx, 0x27
imul ecx, ecx, 0x3b9aca00
sub eax, ecx
cmp eax, dword [rbp + 0x18]
ja 0x1800b1a20
lea rcx, [r12 + 0x20]
call fcn.18004d5a0
mov byte [rbx + 0x509], 2
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1800b234b
mov r13, qword [rsp + 0x30]
mov rcx, qword [0x1801fb9d0]
test rcx, rcx
jne 0x1800b1741
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x1800b234b
mov rcx, qword [rsp + 0x30]
mov qword [0x1801fb9d0], rcx
test rcx, rcx
je 0x1800b22a1
mov rax, r13
or rax, rcx
shr rax, 0x20
je 0x1800b1775
mov rax, r13
xor edx, edx
div rcx
jmp 0x1800b177c
call fcn.18016d440
xor al, 1
mov dword [rsp + 0x2c], eax
movzx eax, byte [r12 + 0x18]
test al, al
je 0x1800b156b
jmp 0x1800b22a1
mov eax, r13d
xor edx, edx
div ecx
imul r9, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
movabs r10, 0x44b82fa09b5a53
je 0x1800b17aa
xor edx, edx
div rcx
mov r8, rax
jmp 0x1800b17b1
xor edx, edx
div ecx
mov r8d, eax
add r8, r9
mov rcx, r8
shr rcx, 9
mov rax, rcx
mul r10
mov r9, rdx
shr r9, 0xb
add r9, qword [rbx + 0x4f0]
jb 0x1800b22a1
mov rax, rcx
mul r10
shr rdx, 0xb
imul eax, edx, 0x3b9aca00
sub r8d, eax
add r8d, dword [rbx + 0x4f8]
cmp r8d, 0x3b9aca00
jb 0x1800b1808
inc r9
je 0x1800b22a1
add r8d, 0xc4653600
mov eax, r8d
shr eax, 9
imul rax, rax, 0x44b83
shr rax, 0x27
imul eax, eax, 0x3b9aca00
sub r8d, eax
mov rcx, qword [rbx + 0x500]
mov rdx, r9
call fcn.18010a130
cmp dword [r12 + 0x38], 0x3b9aca00
jne 0x1800b1a41
mov r15d, 2
cmp byte [rsp + 0x2c], 0
je 0x1800b1854
mov r14, qword [rsp + 0x78]
jmp 0x1800b1873
mov rax, qword [0x1801fb9f0]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
mov r14, qword [rsp + 0x78]
jne 0x1800b2200
mov rcx, r14
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
test r15d, r15d
je 0x1800b189d
mov bpl, 5
cmp r15d, 1
movabs r13, 0x7fffffffffffffff
je 0x1800b2057
jmp 0x1800b1f1b
mov r15, qword [rbx + 0x400]
lea r14, [r15 + 0x10]
mov rcx, r14
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1801fb9f0]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x1800b2212
xor ebp, ebp
movzx eax, byte [r15 + 0x18]
test al, al
jne 0x1800b22a1
mov eax, dword [r15 + 0xcc]
mov ecx, dword [r15 + 0x110]
lea edx, [rax + rcx]
shl rdx, 0x20
add ecx, eax
movabs rcx, 0x300000001
cmovo rdx, rcx
test dl, dl
jne 0x1800b197b
test rdx, rdx
js 0x1800b22a1
shr rdx, 0x20
mov r8d, r13d
sub r8d, edx
jbe 0x1800b1934
lea edx, [rax + r8]
shl rdx, 0x20
add eax, r8d
cmovo rdx, rcx
test dl, 1
jne 0x1800b197b
shr rdx, 0x20
mov eax, edx
jmp 0x1800b193b
sub edx, r13d
sub eax, edx
jo 0x1800b197b
mov dword [r15 + 0xcc], eax
mov ecx, dword [r15 + 0xc8]
sub eax, ecx
jle 0x1800b197b
mov edx, ecx
shr edx, 0x1f
add edx, ecx
sar edx, 1
cmp eax, edx
jl 0x1800b197b
mov rax, qword [r15 + 0x1c0]
mov rcx, qword [r15 + 0x1c8]
mov qword [r15 + 0x1c0], 0
test rax, rax
je 0x1800b197b
call qword [rax + 8]
test bpl, bpl
jne 0x1800b199a
mov rax, qword [0x1801fb9f0]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x1800b22c8
mov rcx, r14
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
cmp dword [rbx + 0x438], 2
jb 0x1800b1a10
mov dword [rbx + 0x444], 0
mov dword [rbx + 0x44c], 0
mov dword [rbx + 0x454], 1
mov dword [rbx + 0x458], r13d
mov dword [rbx + 0x45c], 0
mov dword [rbx + 0x464], 0
mov dword [rbx + 0x46c], 0
mov byte [rbx + 0x474], 0
mov qword [rbx + 0x438], 0
movabs r13, 0x7fffffffffffffff
jmp 0x1800b1f1b
mov byte [rsp + 0xb9], 0xa
mov bpl, 3
jmp 0x1800b2057
mov byte [rbx + 0x509], 0
mov rax, qword [r13]
mov rcx, qword [r13 + 8]
call qword [rax + 0x10]
cmp dword [r12 + 0x38], 0x3b9aca00
je 0x1800b1840
mov r13, qword [r12 + 0x60]
mov rdx, qword [rdi]
lea rcx, [r13 + 0x30]
call fcn.180033ed0
xor ecx, ecx
mov eax, 3
lock cmpxchg qword [r13 + 0x10], rcx
cmp rax, 3
je 0x1800b1aef
cmp rax, 4
je 0x1800b1eef
cmp dword [rbx + 0x4e8], 0x3b9aca00
je 0x1800b1eef
cmp byte [rbx + 0x509], 2
jb 0x1800b1eef
mov rcx, qword [rbx + 0x500]
mov rdx, qword [rdi]
call fcn.180109ef0
test al, al
jne 0x1800b1eef
cmp dword [rbx + 0x4e8], 0x3b9aca00
je 0x1800b230a
mov r15, qword [rbx + 0x500]
mov rcx, r15
call fcn.180107b90
mov rcx, qword [r15 + 8]
mov rdx, qword [r15]
lock dec qword [rcx]
sete al
test rdx, rdx
je 0x1800b22df
test al, al
je 0x1800b22e8
call fcn.18000af90
jmp 0x1800b22e8
mov r8d, dword [r12 + 0x38]
cmp r8d, 0x3b9aca00
je 0x1800b22a1
mov rbp, r14
shr rbp, 0xb
imul eax, ebp, 0x3b9aca00
sub r15d, eax
mov rdx, qword [r12 + 0x30]
mov dword [r12 + 0x38], 0x3b9aca00
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x38], r15d
lea rcx, [rsp + 0x30]
call fcn.1800f8e60
mov r9, rax
mov r13d, edx
xor r14d, r14d
cmp edx, 0x3b9aca00
cmovne r14d, edx
cmp dword [rbx + 0x4e8], 0x3b9aca00
je 0x1800b1d07
mov r8d, 0x3b9aca00
cmp dword [r12 + 0x58], 0x3b9aca00
je 0x1800b1c58
mov qword [rsp + 0x70], r9
mov dword [rsp + 0x6c], r14d
mov r14, rbp
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1800b234b
mov rbp, qword [rsp + 0x30]
mov rcx, qword [0x1801fb9d0]
test rcx, rcx
jne 0x1800b1bd6
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x1800b234b
mov rcx, qword [rsp + 0x30]
mov qword [0x1801fb9d0], rcx
test rcx, rcx
je 0x1800b22a1
mov rax, rbp
or rax, rcx
shr rax, 0x20
je 0x1800b1bec
mov rax, rbp
xor edx, edx
div rcx
jmp 0x1800b1bf2
mov eax, ebp
xor edx, edx
div ecx
imul r9, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
mov rbp, r14
je 0x1800b1c19
xor edx, edx
div rcx
mov r8, rax
jmp 0x1800b1c20
xor edx, edx
div ecx
mov r8d, eax
mov r14d, dword [rsp + 0x6c]
add r8, r9
mov rax, r8
shr rax, 9
movabs rcx, 0x44b82fa09b5a53
mul rcx
shr rdx, 0xb
imul eax, edx, 0x3b9aca00
sub r8d, eax
mov qword [r12 + 0x50], rdx
mov dword [r12 + 0x58], r8d
mov r9, qword [rsp + 0x70]
movzx eax, byte [rbx + 0x509]
test rax, rax
je 0x1800b1c7d
cmp eax, 1
je 0x1800b1d07
cmp dword [r12 + 0x38], 0x3b9aca00
je 0x1800b1c91
jmp 0x1800b1d07
cmp qword [rsp + 0xb0], 2
ja 0x1800b1c91
cmp byte [rbx + 0x508], 0
je 0x1800b1d07
mov byte [rbx + 0x509], 1
cmp r8d, 0x3b9aca00
je 0x1800b22a1
mov rdx, qword [r12 + 0x50]
add rdx, qword [rbx + 0x4e0]
jb 0x1800b22a1
add r8d, dword [rbx + 0x4e8]
cmp r8d, 0x3b9aca00
mov qword [rsp + 0x70], r9
jb 0x1800b1cdc
inc rdx
je 0x1800b22a1
add r8d, 0xc4653600
mov eax, r8d
shr eax, 9
imul rax, rax, 0x44b83
shr rax, 0x27
imul eax, eax, 0x3b9aca00
sub r8d, eax
mov rcx, qword [rbx + 0x500]
call fcn.18010a130
mov r9, qword [rsp + 0x70]
cmp dword [rbx + 0x4c0], 0x3b9aca00
je 0x1800b1eef
cmp qword [r12 + 0x20], 0
je 0x1800b22a1
mov rcx, qword [r12 + 0x28]
mov qword [r12 + 0x20], 1
mov qword [r12 + 0x28], 0
mov eax, dword [rbx + 0x4d8]
cmp rax, 0x1000000
je 0x1800b1e26
movdqa xmm2, xmmword [0x180172e70]
movapd xmm1, xmmword [0x180172e80]
xorpd xmm0, xmm0
xorpd xmm3, xmm3
cmp r13d, 0x3b9aca00
je 0x1800b1d86
movq xmm4, r9
punpckldq xmm4, xmm2
subpd xmm4, xmm1
movapd xmm3, xmm4
unpckhpd xmm3, xmm4
addsd xmm3, xmm4
mov edx, r14d
xorps xmm4, xmm4
cvtsi2sd xmm4, rdx
divsd xmm4, qword [0x180172e90]
addsd xmm4, xmm3
movsd xmm3, qword [rbx + 0x4c8]
movsd xmm5, qword [rbx + 0x4d0]
movapd xmm6, xmm4
subsd xmm6, xmm5
mulsd xmm6, qword [0x180172e98]
addsd xmm6, xmm5
cmpeqsd xmm0, xmm5
andpd xmm4, xmm0
andnpd xmm0, xmm6
orpd xmm0, xmm4
movlpd qword [rbx + 0x4d0], xmm0
movq xmm4, rcx
punpckldq xmm4, xmm2
subpd xmm4, xmm1
movapd xmm1, xmm4
unpckhpd xmm1, xmm4
mulsd xmm0, qword [0x180172ea0]
addsd xmm1, xmm4
divsd xmm1, xmm0
ucomisd xmm3, xmm1
ja 0x1800b1e26
movsd qword [rbx + 0x4c8], xmm1
add rax, rax
movabs rdx, 0x5555555555555556
mul rdx
cmp rdx, rcx
jbe 0x1800b222c
mov rax, qword [rbx + 0x4b8]
cmp rax, 9
ja 0x1800b1e95
mov ecx, dword [rbx + 0x4dc]
inc ecx
mov dword [rbx + 0x4dc], ecx
cmp ecx, 2
jb 0x1800b1e95
mov ecx, dword [rbx + 0x4c0]
imul rdx, rcx, 0x44b82fa1
shr rdx, 0x3a
lea ecx, [rcx*4]
mov r8d, ecx
shr r8d, 9
imul r8, r8, 0x44b83
shr r8, 0x27
imul r8d, r8d, 0x3b9aca00
sub ecx, r8d
lea rax, [rdx + rax*4]
mov qword [rbx + 0x4b8], rax
mov dword [rbx + 0x4c0], ecx
mov dword [rbx + 0x4dc], 0
xor ecx, ecx
add rbp, rax
jb 0x1800b22a1
add r15d, dword [rbx + 0x4c0]
cmp r15d, 0x3b9aca00
jb 0x1800b1ec0
inc rbp
je 0x1800b22a1
add r15d, 0xc4653600
mov eax, r15d
shr eax, 9
imul rax, rax, 0x44b83
shr rax, 0x27
imul eax, eax, 0x3b9aca00
sub r15d, eax
mov qword [r12 + 0x40], rbp
mov dword [r12 + 0x48], r15d
xor r15d, r15d
test cl, cl
jne 0x1800b1846
cmp byte [rsp + 0x2c], 0
movabs r13, 0x7fffffffffffffff
jne 0x1800b1f10
mov rax, qword [0x1801fb9f0]
test rax, r13
jne 0x1800b22a5
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov r15, qword [rbx + 0x400]
lea r14, [r15 + 0x10]
mov rcx, r14
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1801fb9f0]
test rax, r13
jne 0x1800b21d0
xor eax, eax
movzx ecx, byte [r15 + 0x18]
test cl, cl
jne 0x1800b22a1
mov rcx, qword [r15 + 0x38]
mov bpl, 1
or rcx, qword [r15 + 0x48]
jne 0x1800b1f67
cmp qword [r15 + 0x240], 2
setae bpl
test al, al
jne 0x1800b1f7b
mov rax, qword [0x1801fb9f0]
test rax, r13
jne 0x1800b21e9
mov rcx, r14
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
test bpl, bpl
jne 0x1800b1fdd
lea rax, [rbx + 0x3f8]
lea rcx, [rbx + 0x3a0]
lea rdx, [rbx + 0x410]
lea r8, [rbx + 0x3d8]
mov r9, qword [rbx + 0x408]
add r9, 0x10
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r9
mov byte [rsp + 0x60], 0
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], r8
lea rcx, [rsp + 0x30]
call fcn.1800b3900
lea rcx, [rsp + 0x80]
mov rdx, rbx
mov r8, rdi
call fcn.1800b3a80
movzx eax, byte [rsp + 0x80]
cmp eax, 3
je 0x1800b2054
cmp eax, 4
je 0x1800b204d
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x50], rax
movupd xmm0, xmmword [rsp + 0x80]
movupd xmm1, xmmword [rsp + 0x90]
movapd xmmword [rsp + 0x40], xmm1
movapd xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0xb8]
lea rdx, [rsp + 0x30]
call fcn.1800392d0
movzx ebp, byte [rsp + 0xb8]
cmp bpl, 6
jne 0x1800b2057
mov al, 2
jmp 0x1800b21b4
mov bpl, 5
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x9f], rax
movzx eax, byte [rsp + 0xb9]
mov rcx, qword [rsp + 0xba]
mov edx, dword [rsp + 0xc2]
movzx r8d, word [rsp + 0xc6]
movzx r9d, byte [rsp + 0xc8]
movupd xmm0, xmmword [rsp + 0xc9]
movapd xmmword [rsp + 0x90], xmm0
mov byte [rsp + 0x80], al
mov qword [rsp + 0x81], rcx
mov dword [rsp + 0x89], edx
mov word [rsp + 0x8d], r8w
mov byte [rsp + 0x8f], r9b
cmp dword [rsi], 3
je 0x1800b2354
mov rcx, rsi
call fcn.1800b2360
mov qword [rsi], 3
cmp bpl, 5
je 0x1800b21ad
mov byte [rsp + 0x30], bpl
movapd xmm0, xmmword [rsp + 0x80]
movapd xmm1, xmmword [rsp + 0x90]
movupd xmmword [rsp + 0x31], xmm0
movupd xmmword [rsp + 0x41], xmm1
mov rax, qword [rsp + 0x9f]
mov qword [rsp + 0x50], rax
movzx eax, bpl
lea ecx, [rax - 2]
cmp ecx, 2
jb 0x1800b21ad
test eax, eax
je 0x1800b21ad
cmp eax, 1
jne 0x1800b214d
lea rcx, [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
call qword [rax + 0x10]
jmp 0x1800b21ad
mov rax, qword [rsp + 0x38]
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x1800b21ad
test rcx, rcx
je 0x1800b21ad
lea rsi, [rax - 1]
mov rdi, qword [rax - 1]
mov rbx, qword [rax + 7]
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1800b219b
cmp qword [rbx + 0x10], 0x11
jb 0x1800b2189
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1801fb9b8]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fb9b8]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp bpl, 5
setne al
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.18016d440
xor al, 1
movzx ecx, byte [r15 + 0x18]
test cl, cl
je 0x1800b1f4e
jmp 0x1800b22a1
call fcn.18016d440
test al, al
jne 0x1800b1f7b
mov byte [r15 + 0x18], 1
jmp 0x1800b1f7b
call fcn.18016d440
test al, al
jne 0x1800b1873
jmp 0x1800b22bd
call fcn.18016d440
mov ebp, eax
xor bpl, 1
movzx eax, byte [r15 + 0x18]
test al, al
je 0x1800b18da
jmp 0x1800b22a1
add rcx, rcx
cmp rcx, 0x1000000
mov r13d, 0x1000000
cmovb r13, rcx
mov dword [rbx + 0x4d8], r13d
mov dword [rbx + 0x4dc], 0
mov rcx, qword [rbx + 0x4b8]
mov rax, rcx
shr rax, 1
mov edx, dword [rbx + 0x4c0]
shr edx, 1
lea r8d, [rdx + 0x1dcd6500]
test cl, 1
cmove r8d, edx
imul rcx, r8, 0x44b82fa1
shr rcx, 0x3c
imul ecx, ecx, 0x3b9aca00
sub r8d, ecx
mov qword [rbx + 0x4b8], rax
mov dword [rbx + 0x4c0], r8d
mov cl, 1
add rbp, rax
jae 0x1800b1ea0
ud2
call fcn.18016d440
test al, al
jne 0x1800b1f10
mov r15d, 2
mov r14, qword [rsp + 0x78]
mov byte [r12 + 0x18], 1
jmp 0x1800b1873
call fcn.18016d440
test al, al
jne 0x1800b199a
mov byte [r15 + 0x18], 1
jmp 0x1800b199a
test al, al
je 0x1800b22e8
call fcn.180077500
mov rax, qword [r15 + 0x48]
test rax, rax
je 0x1800b22f8
mov rcx, qword [r15 + 0x50]
call qword [rax + 0x18]
mov rcx, qword [0x1801fb9b8]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
mov dword [rbx + 0x4e8], 0x3b9aca00
movupd xmm0, xmmword [rsp + 0x30]
movupd xmm1, xmmword [rsp + 0x40]
movupd xmmword [rbx + 0x4ec], xmm0
movupd xmmword [rbx + 0x4fc], xmm1
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0x50c], eax
mov byte [r12 + 0x68], 1
mov r15d, 1
jmp 0x1800b1846
call fcn.1801572a5
ud2
mov qword [rsi], 3
ud2