Function at 0x180005680
Capabilities:
Check for time delay via queryperformancecounter
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xb8
mov r15d, dword [rcx]
mov r12d, dword [rcx + 4]
and dword [rbp + 0x67], 0
xor edi, edi
mov r14, rcx
xor esi, esi
and dword [rbp + 0x6f], esi
lea r8d, [rdi + 0x40]
lea rcx, [rbp - 0x79]
xor edx, edx
call qword [sym.imp.msvcrt.dll_memset]
lea r8d, [rdi + 1]
mov ebx, r15d
sar ebx, 0x14
test r8b, bl
je 0x18000576c
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005769
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005766
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005763
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005760
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x18000575d
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x18000575a
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005757
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005754
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x180005751
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x18000574e
xor ebx, 2
sar ebx, 1
test r8b, bl
je 0x18000574b
xor ebx, 2
sar ebx, 1
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
add edi, r8d
mov eax, r15d
lea rcx, [rbp + 7]
and r12d, 0x1fff
sar eax, 0x12
and r15d, 0x1fff
and eax, 7
mov dword [rbp + 0x77], eax
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movsxd r11, r15d
mov eax, dword [r14 + r11*4 + 0x1010]
movsxd r13, r12d
mov r9, r11
xor dword [rbp - 0x79], eax
mov eax, dword [r14 + r13*4 + 0x1010]
xor r9, 1
xor dword [rbp - 0x75], eax
mov eax, dword [r14 + r9*4 + 0x1010]
mov r10, r13
xor dword [rbp - 0x71], eax
xor r10, 4
mov qword [rbp + 0x7f], r11
mov eax, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x6d], eax
mov eax, dword [r14 + r11*4 + 0x1010]
mov ecx, dword [r14 + r13*4 + 0x1010]
mov edx, ecx
sar ecx, 2
mov r8d, eax
shl edx, 0x1e
shl r8d, 0x1f
sar eax, 1
xor edx, ecx
xor r8d, eax
mov rax, qword [rbp + 7]
xor edx, eax
xor r8d, eax
mov dword [r14 + r11*4 + 0x1010], edx
xor r8d, edi
mov dword [r14 + r13*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 3
shl edx, 0x1d
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 4
shl edx, 0x1c
xor edx, ecx
mov rcx, r11
xor rcx, 2
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
lea r9, [r14 + rcx*4 + 0x1010]
mov r10, r13
mov ecx, dword [r9]
xor r10, 2
xor dword [rbp - 0x69], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x65], ecx
mov rcx, r11
xor rcx, 3
lea rdx, [r14 + rcx*4 + 0x1010]
mov ecx, dword [rdx]
xor dword [rbp - 0x61], ecx
mov rcx, r13
xor rcx, 6
mov qword [rbp - 0x39], rcx
mov ecx, dword [r14 + rcx*4 + 0x1010]
xor dword [rbp - 0x5d], ecx
test bl, 1
je 0x1800058ac
mov rbx, r9
mov r9, rdx
jmp 0x1800058af
mov rbx, rdx
mov ecx, dword [r9]
mov r8d, ecx
sar ecx, 5
shl r8d, 0x1b
xor r8d, ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 6
xor r8d, eax
shl edx, 0x1a
xor edx, ecx
lea rcx, [rbp + 0xf]
xor edx, eax
mov dword [r9], edx
mov dword [r14 + r10*4 + 0x1010], r8d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [rbx]
mov r8, qword [rbp - 0x39]
mov rax, qword [rbp + 0xf]
mov ecx, r11d
sar r11d, 7
not r15d
shl ecx, 0x19
and r15d, 8
sar r12d, 1
xor ecx, r11d
mov r11, qword [rbp + 0x7f]
xor ecx, eax
mov dword [rbx], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov edx, ecx
sar ecx, 8
shl edx, 0x18
xor edx, ecx
mov rcx, r13
xor rcx, 1
xor edx, eax
mov dword [r14 + r8*4 + 0x1010], edx
mov qword [rbp - 0x39], rcx
movsxd rcx, dword [rbp + 0x6f]
mov rdx, rcx
mov r8, r11
xor rdx, r13
xor r8, 4
xor rdx, 7
mov qword [rbp - 0x31], r8
mov r13d, dword [r14 + rdx*4 + 0x1010]
xor r13d, dword [rbp + rcx*4 - 0x79]
and r13d, 0x1ff7
xor r13d, r15d
mov r15d, 1
mov ecx, r13d
sar ecx, 0xa
and ecx, 7
mov dword [rbp + 0x6f], ecx
test r15b, r12b
je 0x180005a29
lea ecx, [r15 + 1]
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a26
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a23
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a20
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a1d
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a1a
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a17
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a14
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a11
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a0e
xor r12d, ecx
sar r12d, 1
test r15b, r12b
je 0x180005a0b
not r12d
test cl, r12b
je 0x180005a08
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
add esi, r15d
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r12, qword [rbp - 0x39]
movsxd rbx, r13d
xor dword [rbp - 0x59], ecx
mov ecx, dword [r14 + r12*4 + 0x1010]
mov r9, r11
xor dword [rbp - 0x55], ecx
xor r9, 5
mov r10, rbx
mov ecx, dword [r14 + r9*4 + 0x1010]
xor r10, 5
xor dword [rbp - 0x51], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x4d], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r8d, ecx
sar ecx, 9
shl r8d, 0x17
xor r8d, ecx
mov ecx, dword [r14 + r12*4 + 0x1010]
mov edx, ecx
sar ecx, 0xa
xor r8d, eax
shl edx, 0x16
xor r8d, esi
xor edx, ecx
mov rcx, qword [rbp - 0x31]
xor edx, eax
mov dword [r14 + rcx*4 + 0x1010], edx
mov dword [r14 + r12*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xb
shl edx, 0x15
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r9, rbx
mov edx, ecx
sar ecx, 0xc
xor r9, 3
shl edx, 0x14
xor rbx, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov r10, r11
xor r11, 7
xor r10, 6
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x49], ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x45], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
xor dword [rbp - 0x41], ecx
mov ecx, dword [r14 + rbx*4 + 0x1010]
xor dword [rbp - 0x3d], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r8d, ecx
sar ecx, 0xd
shl r8d, 0x13
xor r8d, ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xe
xor r8d, eax
shl edx, 0x12
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov dword [r14 + r9*4 + 0x1010], r8d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov edx, ecx
shl ecx, 0x11
sar edx, 0xf
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov ecx, dword [r14 + rbx*4 + 0x1010]
mov edx, ecx
shl ecx, 0x10
sar edx, 0x10
xor edx, ecx
movsxd rcx, dword [rbp + 0x77]
xor edx, eax
mov rax, rcx
xor rcx, 8
xor rax, qword [rbp + 0x7f]
mov dword [r14 + rbx*4 + 0x1010], edx
xor rax, 7
mov r12d, dword [r14 + rax*4 + 0x1010]
mov eax, r13d
xor r12d, dword [rbp + rcx*4 - 0x79]
not eax
xor ecx, ecx
and eax, 0x10
and r12d, 0xfffffffe
xor r12d, eax
mov eax, dword [rbp + 0x67]
add eax, r15d
mov dword [rbp + 0x67], eax
and eax, 0x800003ff
jge 0x180005be7
sub eax, r15d
or eax, 0xfffffc00
add eax, r15d
movsxd rdx, eax
mov eax, dword [r14 + rdx*4 + 0x10]
xor eax, dword [rbp + rcx*4 - 0x79]
add rcx, r15
cmp rcx, 0x10
jl 0x180005bef
mov ebx, r12d
mov dword [r14 + rdx*4 + 0x10], eax
sar ebx, 0x14
test r15b, bl
je 0x180005ca0
mov eax, 2
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c9d
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c9a
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c97
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c94
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c91
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c8e
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c8b
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c88
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c85
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c82
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180005c7f
xor ebx, eax
sar ebx, 1
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
mov eax, r12d
lea rcx, [rbp - 0x19]
sar eax, 0x12
and eax, 7
mov dword [rbp + 0x7f], eax
mov eax, 0x1fff
and r12d, eax
and r13d, eax
mov dword [rbp + 0x77], r12d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movsxd r11, r12d
mov eax, dword [r14 + r11*4 + 0x1010]
movsxd r12, r13d
mov r9, r11
xor dword [rbp - 0x79], eax
mov eax, dword [r14 + r12*4 + 0x1010]
xor r9, r15
xor dword [rbp - 0x75], eax
mov eax, dword [r14 + r9*4 + 0x1010]
mov r10, r12
xor dword [rbp - 0x71], eax
xor r10, 4
mov qword [rbp - 0x31], r11
mov eax, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x6d], eax
mov eax, dword [r14 + r11*4 + 0x1010]
mov ecx, dword [r14 + r12*4 + 0x1010]
mov edx, ecx
sar ecx, 2
mov r8d, eax
shl edx, 0x1e
shl r8d, 0x1f
sar eax, 1
xor edx, ecx
xor r8d, eax
mov rax, qword [rbp - 0x19]
xor edx, eax
xor r8d, eax
mov dword [r14 + r11*4 + 0x1010], edx
xor r8d, edi
mov dword [r14 + r12*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 3
shl edx, 0x1d
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 4
shl edx, 0x1c
xor edx, ecx
mov rcx, r11
xor rcx, 2
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
lea r9, [r14 + rcx*4 + 0x1010]
mov r10, r12
mov ecx, dword [r9]
xor r10, 2
xor dword [rbp - 0x69], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x65], ecx
mov rcx, r11
xor rcx, 3
lea r15, [r14 + rcx*4 + 0x1010]
mov ecx, dword [r15]
xor dword [rbp - 0x61], ecx
mov rcx, r12
xor rcx, 6
mov qword [rbp - 0x39], rcx
mov ecx, dword [r14 + rcx*4 + 0x1010]
xor dword [rbp - 0x5d], ecx
test bl, 1
je 0x180005de2
mov rcx, r9
mov r9, r15
mov r15, rcx
mov ecx, dword [r9]
mov r8d, ecx
sar ecx, 5
shl r8d, 0x1b
xor r8d, ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 6
xor r8d, eax
shl edx, 0x1a
xor edx, ecx
lea rcx, [rbp - 0x29]
xor edx, eax
mov dword [r9], edx
mov dword [r14 + r10*4 + 0x1010], r8d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [r15]
mov r8, qword [rbp - 0x39]
mov rax, qword [rbp - 0x29]
mov ecx, r11d
sar r11d, 7
mov r9d, 1
shl ecx, 0x19
sar r13d, 1
xor ecx, r11d
xor ecx, eax
mov dword [r15], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r15, qword [rbp - 0x31]
mov edx, ecx
sar ecx, 8
mov r11, r15
shl edx, 0x18
xor r11, 4
xor edx, ecx
movsxd rcx, dword [rbp + 0x6f]
xor edx, eax
mov dword [r14 + r8*4 + 0x1010], edx
mov rdx, rcx
mov r8, r12
xor rdx, r12
xor r8, r9
xor rdx, 7
mov qword [rbp - 0x39], r8
mov r12d, dword [r14 + rdx*4 + 0x1010]
xor r12d, dword [rbp + rcx*4 - 0x79]
mov ecx, dword [rbp + 0x77]
not ecx
and r12d, 0x1ff7
and ecx, 8
xor r12d, ecx
mov ecx, r12d
sar ecx, 0xa
and ecx, 7
mov dword [rbp + 0x6f], ecx
test r9b, r13b
je 0x180005f59
lea ecx, [r9 + 1]
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f56
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f53
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f50
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f4d
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f4a
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f47
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f44
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f41
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f3e
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x180005f3b
not r13d
test cl, r13b
je 0x180005f38
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r13, qword [rbp - 0x39]
movsxd rbx, r12d
xor dword [rbp - 0x59], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r10, rbx
xor dword [rbp - 0x55], ecx
xor r10, 5
mov r9, r15
xor r9, 5
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x51], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x4d], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r8d, ecx
sar ecx, 9
shl r8d, 0x17
xor r8d, ecx
mov ecx, dword [r14 + r13*4 + 0x1010]
mov edx, ecx
sar ecx, 0xa
xor r8d, eax
shl edx, 0x16
xor r8d, esi
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov dword [r14 + r13*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xb
mov r11, r15
shl edx, 0x15
xor r11, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r9, rbx
mov edx, ecx
sar ecx, 0xc
xor r9, 3
shl edx, 0x14
xor rbx, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov r10, r15
xor r10, 6
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x49], ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x45], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
xor dword [rbp - 0x41], ecx
mov ecx, dword [r14 + rbx*4 + 0x1010]
xor dword [rbp - 0x3d], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r8d, ecx
sar ecx, 0xd
shl r8d, 0x13
xor r8d, ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xe
xor r8d, eax
shl edx, 0x12
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov dword [r14 + r9*4 + 0x1010], r8d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov edx, ecx
shl ecx, 0x11
sar edx, 0xf
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov ecx, dword [r14 + rbx*4 + 0x1010]
mov edx, ecx
shl ecx, 0x10
sar edx, 0x10
xor edx, ecx
movsxd rcx, dword [rbp + 0x7f]
xor edx, eax
mov rax, rcx
xor rcx, 8
xor rax, r15
mov dword [r14 + rbx*4 + 0x1010], edx
mov r15d, 1
xor rax, 7
mov r13d, dword [r14 + rax*4 + 0x1010]
mov eax, r12d
xor r13d, dword [rbp + rcx*4 - 0x79]
not eax
xor ecx, ecx
and eax, 0x10
and r13d, 0xfffffffe
xor r13d, eax
mov eax, dword [rbp + 0x67]
add eax, r15d
mov dword [rbp + 0x67], eax
and eax, 0x800003ff
jge 0x18000611b
sub eax, r15d
or eax, 0xfffffc00
add eax, r15d
movsxd rdx, eax
mov eax, dword [r14 + rdx*4 + 0x10]
xor eax, dword [rbp + rcx*4 - 0x79]
add rcx, r15
cmp rcx, 0x10
jl 0x180006123
mov ebx, r13d
mov dword [r14 + rdx*4 + 0x10], eax
sar ebx, 0x14
test r15b, bl
je 0x1800061d4
mov eax, 2
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061d1
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061ce
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061cb
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061c8
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061c5
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061c2
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061bf
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061bc
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061b9
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061b6
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800061b3
xor ebx, eax
sar ebx, 1
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
mov eax, r13d
lea rcx, [rbp - 9]
sar eax, 0x12
and eax, 7
mov dword [rbp + 0x7f], eax
mov eax, 0x1fff
and r13d, eax
and r12d, eax
mov dword [rbp + 0x77], r13d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movsxd r11, r13d
mov eax, dword [r14 + r11*4 + 0x1010]
movsxd r13, r12d
mov r9, r11
xor dword [rbp - 0x79], eax
mov eax, dword [r14 + r13*4 + 0x1010]
xor r9, r15
xor dword [rbp - 0x75], eax
mov eax, dword [r14 + r9*4 + 0x1010]
mov r10, r13
xor dword [rbp - 0x71], eax
xor r10, 4
mov qword [rbp - 0x31], r11
mov eax, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x6d], eax
mov eax, dword [r14 + r11*4 + 0x1010]
mov ecx, dword [r14 + r13*4 + 0x1010]
mov edx, ecx
sar ecx, 2
mov r8d, eax
shl edx, 0x1e
shl r8d, 0x1f
sar eax, 1
xor edx, ecx
xor r8d, eax
mov rax, qword [rbp - 9]
xor edx, eax
xor r8d, eax
mov dword [r14 + r11*4 + 0x1010], edx
xor r8d, edi
mov dword [r14 + r13*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 3
shl edx, 0x1d
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 4
shl edx, 0x1c
xor edx, ecx
mov rcx, r11
xor rcx, 2
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
lea r9, [r14 + rcx*4 + 0x1010]
mov r10, r13
mov ecx, dword [r9]
xor r10, 2
xor dword [rbp - 0x69], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x65], ecx
mov rcx, r11
xor rcx, 3
lea r15, [r14 + rcx*4 + 0x1010]
mov ecx, dword [r15]
xor dword [rbp - 0x61], ecx
mov rcx, r13
xor rcx, 6
mov qword [rbp - 0x39], rcx
mov ecx, dword [r14 + rcx*4 + 0x1010]
xor dword [rbp - 0x5d], ecx
test bl, 1
je 0x180006316
mov rcx, r9
mov r9, r15
mov r15, rcx
mov ecx, dword [r9]
mov r8d, ecx
sar ecx, 5
shl r8d, 0x1b
xor r8d, ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 6
xor r8d, eax
shl edx, 0x1a
xor edx, ecx
lea rcx, [rbp - 0x21]
xor edx, eax
mov dword [r9], edx
mov dword [r14 + r10*4 + 0x1010], r8d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [r15]
mov r8, qword [rbp - 0x39]
mov rax, qword [rbp - 0x21]
mov ecx, r11d
sar r11d, 7
mov r9d, 1
shl ecx, 0x19
sar r12d, 1
xor ecx, r11d
xor ecx, eax
mov dword [r15], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r15, qword [rbp - 0x31]
mov edx, ecx
sar ecx, 8
mov r11, r15
shl edx, 0x18
xor r11, 4
xor edx, ecx
movsxd rcx, dword [rbp + 0x6f]
xor edx, eax
mov dword [r14 + r8*4 + 0x1010], edx
mov rdx, rcx
mov r8, r13
xor rdx, r13
xor r8, r9
xor rdx, 7
mov qword [rbp - 0x39], r8
mov r13d, dword [r14 + rdx*4 + 0x1010]
xor r13d, dword [rbp + rcx*4 - 0x79]
mov ecx, dword [rbp + 0x77]
not ecx
and r13d, 0x1ff7
and ecx, 8
xor r13d, ecx
mov ecx, r13d
sar ecx, 0xa
and ecx, 7
mov dword [rbp + 0x6f], ecx
test r9b, r12b
je 0x18000648d
lea ecx, [r9 + 1]
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x18000648a
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006487
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006484
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006481
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x18000647e
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x18000647b
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006478
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006475
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x180006472
xor r12d, ecx
sar r12d, 1
test r9b, r12b
je 0x18000646f
not r12d
test cl, r12b
je 0x18000646c
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r12, qword [rbp - 0x39]
movsxd rbx, r13d
xor dword [rbp - 0x59], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r10, rbx
xor dword [rbp - 0x55], ecx
xor r10, 5
mov r9, r15
xor r9, 5
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x51], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x4d], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r8d, ecx
sar ecx, 9
shl r8d, 0x17
xor r8d, ecx
mov ecx, dword [r14 + r12*4 + 0x1010]
mov edx, ecx
sar ecx, 0xa
xor r8d, eax
shl edx, 0x16
xor r8d, esi
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov dword [r14 + r12*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xb
mov r11, r15
shl edx, 0x15
xor r11, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r9, rbx
mov edx, ecx
sar ecx, 0xc
xor r9, 3
shl edx, 0x14
xor rbx, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov r10, r15
xor r10, 6
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x49], ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x45], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
xor dword [rbp - 0x41], ecx
mov ecx, dword [r14 + rbx*4 + 0x1010]
xor dword [rbp - 0x3d], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r8d, ecx
sar ecx, 0xd
shl r8d, 0x13
xor r8d, ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xe
xor r8d, eax
shl edx, 0x12
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov dword [r14 + r9*4 + 0x1010], r8d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov edx, ecx
shl ecx, 0x11
sar edx, 0xf
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov ecx, dword [r14 + rbx*4 + 0x1010]
mov edx, ecx
shl ecx, 0x10
sar edx, 0x10
xor edx, ecx
movsxd rcx, dword [rbp + 0x7f]
xor edx, eax
mov rax, rcx
xor rcx, 8
xor rax, r15
mov dword [r14 + rbx*4 + 0x1010], edx
mov r15d, 1
xor rax, 7
mov r12d, dword [r14 + rax*4 + 0x1010]
mov eax, r13d
xor r12d, dword [rbp + rcx*4 - 0x79]
not eax
xor ecx, ecx
and eax, 0x10
and r12d, 0xfffffffe
xor r12d, eax
mov eax, dword [rbp + 0x67]
add eax, r15d
mov dword [rbp + 0x67], eax
and eax, 0x800003ff
jge 0x18000664f
sub eax, r15d
or eax, 0xfffffc00
add eax, r15d
movsxd rdx, eax
mov eax, dword [r14 + rdx*4 + 0x10]
xor eax, dword [rbp + rcx*4 - 0x79]
add rcx, r15
cmp rcx, 0x10
jl 0x180006657
mov ebx, r12d
mov dword [r14 + rdx*4 + 0x10], eax
sar ebx, 0x14
test r15b, bl
je 0x180006708
mov eax, 2
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180006705
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x180006702
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066ff
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066fc
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066f9
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066f6
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066f3
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066f0
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066ed
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066ea
xor ebx, eax
sar ebx, 1
test r15b, bl
je 0x1800066e7
xor ebx, eax
sar ebx, 1
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
add edi, r15d
mov eax, r12d
lea rcx, [rbp - 0x11]
sar eax, 0x12
and eax, 7
mov dword [rbp + 0x7f], eax
mov eax, 0x1fff
and r12d, eax
and r13d, eax
mov dword [rbp + 0x77], r12d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movsxd r11, r12d
mov eax, dword [r14 + r11*4 + 0x1010]
movsxd r12, r13d
mov r9, r11
xor dword [rbp - 0x79], eax
mov eax, dword [r14 + r12*4 + 0x1010]
xor r9, r15
xor dword [rbp - 0x75], eax
mov eax, dword [r14 + r9*4 + 0x1010]
mov r10, r12
xor dword [rbp - 0x71], eax
xor r10, 4
mov qword [rbp - 0x31], r11
mov eax, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x6d], eax
mov eax, dword [r14 + r11*4 + 0x1010]
mov ecx, dword [r14 + r12*4 + 0x1010]
mov edx, ecx
sar ecx, 2
mov r8d, eax
shl edx, 0x1e
shl r8d, 0x1f
sar eax, 1
xor edx, ecx
xor r8d, eax
mov rax, qword [rbp - 0x11]
xor edx, eax
xor r8d, eax
mov dword [r14 + r11*4 + 0x1010], edx
xor r8d, edi
mov dword [r14 + r12*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 3
shl edx, 0x1d
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 4
shl edx, 0x1c
xor edx, ecx
mov rcx, r11
xor rcx, 2
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
lea r9, [r14 + rcx*4 + 0x1010]
mov r10, r12
mov ecx, dword [r9]
xor r10, 2
xor dword [rbp - 0x69], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x65], ecx
mov rcx, r11
xor rcx, 3
lea r15, [r14 + rcx*4 + 0x1010]
mov ecx, dword [r15]
xor dword [rbp - 0x61], ecx
mov rcx, r12
xor rcx, 6
mov qword [rbp - 0x39], rcx
mov ecx, dword [r14 + rcx*4 + 0x1010]
xor dword [rbp - 0x5d], ecx
test bl, 1
je 0x18000684a
mov rcx, r9
mov r9, r15
mov r15, rcx
mov ecx, dword [r9]
mov r8d, ecx
sar ecx, 5
shl r8d, 0x1b
xor r8d, ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov edx, ecx
sar ecx, 6
xor r8d, eax
shl edx, 0x1a
xor edx, ecx
lea rcx, [rbp - 1]
xor edx, eax
mov dword [r9], edx
mov dword [r14 + r10*4 + 0x1010], r8d
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r11d, dword [r15]
mov r8, qword [rbp - 0x39]
mov rax, qword [rbp - 1]
mov ecx, r11d
sar r11d, 7
mov r9d, 1
shl ecx, 0x19
sar r13d, 1
xor ecx, r11d
xor ecx, eax
mov dword [r15], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r15, qword [rbp - 0x31]
mov edx, ecx
sar ecx, 8
mov r11, r15
shl edx, 0x18
xor r11, 4
xor edx, ecx
movsxd rcx, dword [rbp + 0x6f]
xor edx, eax
mov dword [r14 + r8*4 + 0x1010], edx
mov rdx, rcx
mov r8, r12
xor rdx, r12
xor r8, r9
xor rdx, 7
mov qword [rbp - 0x39], r8
mov r12d, dword [r14 + rdx*4 + 0x1010]
xor r12d, dword [rbp + rcx*4 - 0x79]
mov ecx, dword [rbp + 0x77]
not ecx
and r12d, 0x1ff7
and ecx, 8
xor r12d, ecx
mov ecx, r12d
sar ecx, 0xa
and ecx, 7
mov dword [rbp + 0x6f], ecx
test r9b, r13b
je 0x1800069c1
lea ecx, [r9 + 1]
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069be
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069bb
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069b8
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069b5
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069b2
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069af
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069ac
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069a9
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069a6
xor r13d, ecx
sar r13d, 1
test r9b, r13b
je 0x1800069a3
not r13d
test cl, r13b
je 0x1800069a0
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
add esi, r9d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r13, qword [rbp - 0x39]
movsxd rbx, r12d
xor dword [rbp - 0x59], ecx
mov ecx, dword [r14 + r8*4 + 0x1010]
mov r10, rbx
xor dword [rbp - 0x55], ecx
xor r10, 5
mov r9, r15
xor r9, 5
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x51], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x4d], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
mov r8d, ecx
sar ecx, 9
shl r8d, 0x17
xor r8d, ecx
mov ecx, dword [r14 + r13*4 + 0x1010]
mov edx, ecx
sar ecx, 0xa
xor r8d, eax
shl edx, 0x16
xor r8d, esi
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov dword [r14 + r13*4 + 0x1010], r8d
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xb
mov r11, r15
shl edx, 0x15
xor r11, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r9*4 + 0x1010], edx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r9, rbx
mov edx, ecx
sar ecx, 0xc
xor r9, 3
shl edx, 0x14
xor rbx, 7
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov r10, r15
xor r10, 6
mov ecx, dword [r14 + r10*4 + 0x1010]
xor dword [rbp - 0x49], ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
xor dword [rbp - 0x45], ecx
mov ecx, dword [r14 + r11*4 + 0x1010]
xor dword [rbp - 0x41], ecx
mov ecx, dword [r14 + rbx*4 + 0x1010]
xor dword [rbp - 0x3d], ecx
mov ecx, dword [r14 + r10*4 + 0x1010]
mov r8d, ecx
sar ecx, 0xd
shl r8d, 0x13
xor r8d, ecx
mov ecx, dword [r14 + r9*4 + 0x1010]
mov edx, ecx
sar ecx, 0xe
xor r8d, eax
shl edx, 0x12
xor edx, ecx
xor edx, eax
mov dword [r14 + r10*4 + 0x1010], edx
mov dword [r14 + r9*4 + 0x1010], r8d
mov ecx, dword [r14 + r11*4 + 0x1010]
mov edx, ecx
shl ecx, 0x11
sar edx, 0xf
xor edx, ecx
xor edx, eax
mov dword [r14 + r11*4 + 0x1010], edx
mov ecx, dword [r14 + rbx*4 + 0x1010]
mov edx, ecx
mov r13d, dword [rbp + 0x67]
shl ecx, 0x10
sar edx, 0x10
xor edx, ecx
movsxd rcx, dword [rbp + 0x7f]
mov r8d, 1
xor edx, eax
mov rax, rcx
xor rcx, 8
xor rax, r15
add r13d, r8d
mov dword [r14 + rbx*4 + 0x1010], edx
xor rax, 7
mov dword [rbp + 0x67], r13d
mov r15d, dword [r14 + rax*4 + 0x1010]
mov eax, r12d
xor r15d, dword [rbp + rcx*4 - 0x79]
not eax
xor ecx, ecx
and eax, 0x10
and r15d, 0xfffffffe
xor r15d, eax
mov eax, r13d
and eax, 0x800003ff
jge 0x180006b88
sub eax, r8d
or eax, 0xfffffc00
add eax, r8d
movsxd rdx, eax
mov eax, dword [r14 + rdx*4 + 0x10]
xor eax, dword [rbp + rcx*4 - 0x79]
add rcx, r8
cmp rcx, 0x10
jl 0x180006b90
mov dword [r14 + rdx*4 + 0x10], eax
cmp r13d, 0x1000
jl 0x1800056c2
and dword [r14 + 8], 0
mov dword [r14], r15d
mov dword [r14 + 4], r12d
mov dword [r14 + 0xc], 0x200
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret