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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x800]
sub rsp, 0x900
mov rax, qword [0x14031b940]
xor rax, rsp
mov qword [rbp + 0x7f0], rax
mov r15, rdx
mov r13, rcx
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x7b0], xmm0
movdqa xmm1, xmmword [0x1402d4800]
movdqu xmmword [rbp + 0x7c0], xmm1
mov word [rbp + 0x7b0], r12w
lea rdx, [rbp + 0x7b0]
call fcn.140057f70
lea rsi, [r12 - 1]
test al, al
je 0x140056e0e
lea rdx, [rbp + 0x7b0]
cmp qword [rbp + 0x7c8], 7
cmova rdx, qword [rbp + 0x7b0]
lea rcx, [r15 + 0x20]
test rdx, rdx
jne 0x140056b51
mov r8d, r12d
jmp 0x140056b5f
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x140056b54
call fcn.140002b6c
xorps xmm0, xmm0
movups xmmword [rbp + 0x770], xmm0
movdqa xmm1, xmmword [0x1402d4810]
movdqu xmmword [rbp + 0x780], xmm1
mov byte [rbp + 0x770], 0
lea rdx, [rbp + 0x770]
mov rcx, r13
call fcn.1400583a0
test al, al
je 0x140056c74
lea rbx, [rbp + 0x770]
cmp qword [rbp + 0x788], 0xf
cmova rbx, qword [rbp + 0x770]
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140057ea5
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x6f0], rax
lea rax, [rbx - 1]
lea rcx, [rbp + 0x6f0]
cmp rax, 0xfffe
ja 0x140056bf2
movzx edx, bx
call fcn.1400108d0
jmp 0x140056bfb
mov rdx, rbx
call fcn.1400131d0
nop
lea rdx, str.genuineintel
mov rbx, qword [rbp + 0x6f0]
mov rcx, rbx
call fcn.14022a514
test eax, eax
sete dil
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140056c31
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x788]
cmp rdx, 0xf
jbe 0x140056cb8
inc rdx
mov rcx, qword [rbp + 0x770]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056c6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057eb0
call fcn.140003e94
jmp 0x140056cb8
mov rdx, qword [rbp + 0x788]
cmp rdx, 0xf
jbe 0x140056cb5
inc rdx
mov rcx, qword [rbp + 0x770]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056cb0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057eb0
call fcn.140003e94
xor dil, dil
mov byte [r15 + 0x28], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x790], xmm0
movdqa xmm1, xmmword [0x1402d4810]
movdqu xmmword [rbp + 0x7a0], xmm1
mov byte [rbp + 0x790], 0
lea rdx, [rbp + 0x790]
mov rcx, r13
call fcn.1400583a0
test al, al
je 0x140056dc6
lea rbx, [rbp + 0x790]
cmp qword [rbp + 0x7a8], 0xf
cmova rbx, qword [rbp + 0x790]
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140057eb6
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
lea rax, [rbx - 1]
lea rcx, [rsp + 0x30]
cmp rax, 0xfffe
ja 0x140056d46
movzx edx, bx
call fcn.1400108d0
jmp 0x140056d4f
mov rdx, rbx
call fcn.1400131d0
nop
lea rdx, str.authenticamd
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
call fcn.14022a514
test eax, eax
sete dil
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140056d83
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x7a8]
cmp rdx, 0xf
jbe 0x140056e0a
inc rdx
mov rcx, qword [rbp + 0x790]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056dbf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ec1
call fcn.140003e94
jmp 0x140056e0a
mov rdx, qword [rbp + 0x7a8]
cmp rdx, 0xf
jbe 0x140056e07
inc rdx
mov rcx, qword [rbp + 0x790]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056e02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ec1
call fcn.140003e94
xor dil, dil
mov byte [r15 + 0x29], dil
lea r8, [rbp + 0x6b0]
mov edx, 2
mov rcx, r13
call fcn.1400585d0
test al, al
je 0x140056f0d
mov ecx, dword [rbp + 0x6b0]
mov eax, ecx
and eax, 0xff000000
cmp eax, 0x40000000
je 0x140056f09
mov eax, ecx
and eax, 0xff0000
cmp eax, 0x400000
je 0x140056f09
and ecx, 0xff00
cmp ecx, 0x4000
je 0x140056f09
mov ecx, dword [rbp + 0x6b4]
mov eax, ecx
and eax, 0xff000000
cmp eax, 0x40000000
je 0x140056f09
mov eax, ecx
and eax, 0xff0000
cmp eax, 0x400000
je 0x140056f09
mov eax, ecx
and eax, 0xff00
cmp eax, 0x4000
je 0x140056f09
cmp cl, 0x40
je 0x140056f09
mov ecx, dword [rbp + 0x6b8]
mov eax, ecx
and eax, 0xff000000
cmp eax, 0x40000000
je 0x140056f09
mov eax, ecx
and eax, 0xff0000
cmp eax, 0x400000
je 0x140056f09
mov eax, ecx
and eax, 0xff00
cmp eax, 0x4000
je 0x140056f09
cmp cl, 0x40
je 0x140056f09
mov ecx, dword [rbp + 0x6bc]
mov eax, ecx
and eax, 0xff000000
cmp eax, 0x40000000
je 0x140056f09
mov eax, ecx
and eax, 0xff0000
cmp eax, 0x400000
je 0x140056f09
mov eax, ecx
and eax, 0xff00
cmp eax, 0x4000
je 0x140056f09
cmp cl, 0x40
jne 0x140056f0d
mov al, 1
jmp 0x140056f0f
xor al, al
mov byte [r15 + 0x38], al
lea r8, [rbp + 0x6b0]
mov edx, 1
mov rcx, r13
call fcn.1400585d0
mov edi, 0x30
test al, al
je 0x140057aaf
mov edi, dword [rbp + 0x6b0]
mov ecx, edi
shr ecx, 8
and ecx, 0xf
cmp ecx, 6
je 0x14005703a
cmp ecx, 0xf
je 0x14005703a
mov ebx, edi
shr ebx, 4
and ebx, 0xf
mov r14d, edi
shr r14d, 0xc
mov r12d, ecx
and edi, 0xf
and r14d, 3
lea rcx, [rbp + 0x2b0]
call fcn.140019350
nop
mov rax, qword [rbp + 0x2c0]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x2d8]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0x2d8], eax
mov edx, 1
lea rcx, [rbp + 0x6f0]
call fcn.140223420
mov rcx, qword [rbp + 0x2c0]
movsxd r8, dword [rcx + 4]
lea rcx, [rbp + 0x2c0]
add rcx, r8
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp + 0x2c0]
movsxd rcx, dword [rax + 4]
mov eax, 0x30
mov word [rbp + rcx + 0x318], ax
mov rax, qword [rbp + 0x2c0]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x2d8], 4
mov edx, edi
lea rcx, [rbp + 0x2c0]
call fcn.140019580
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0x2c8]
call fcn.140019f80
nop
lea rdx, [rbp + 0x6b0]
cmp qword [rbp + 0x6c8], 7
cmova rdx, qword [rbp + 0x6b0]
lea rcx, [r15 + 0x40]
test rdx, rdx
jne 0x14005706d
xor r8d, r8d
jmp 0x14005707b
mov r14d, edi
shr r14d, 0xc
mov ebx, edi
shr ebx, 4
and ebx, 0xf
mov eax, r14d
and eax, 0xf0
add ebx, eax
cmp ecx, 0xf
jne 0x140056f63
mov eax, edi
shr eax, 0x14
movzx r12d, al
add r12d, ecx
jmp 0x140056f66
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x140057070
call fcn.140002b6c
nop
mov rdx, qword [rbp + 0x6c8]
cmp rdx, 7
jbe 0x1400570c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400570c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ec7
call fcn.140003e94
lea rcx, [rbp + 0x1b0]
call fcn.140019350
nop
mov rax, qword [rbp + 0x1c0]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x1d8]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0x1d8], eax
mov edx, 2
lea rcx, [rbp + 0x750]
call fcn.140223420
mov rcx, qword [rbp + 0x1c0]
movsxd r8, dword [rcx + 4]
lea rcx, [rbp + 0x1c0]
add rcx, r8
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp + 0x1c0]
movsxd rcx, dword [rax + 4]
mov edi, 0x30
mov word [rbp + rcx + 0x218], di
mov rax, qword [rbp + 0x1c0]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x1d8], 4
mov edx, r12d
lea rcx, [rbp + 0x1c0]
call fcn.140019580
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0x1c8]
call fcn.140019f80
nop
lea rdx, [rbp + 0x6b0]
cmp qword [rbp + 0x6c8], 7
cmova rdx, qword [rbp + 0x6b0]
lea rcx, [r15 + 0x48]
test rdx, rdx
jne 0x140057198
xor r12d, r12d
mov r8d, r12d
jmp 0x1400571ae
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400571a0
xor r12d, r12d
call fcn.140002b6c
nop
mov rdx, qword [rbp + 0x6c8]
cmp rdx, 7
jbe 0x1400571fa
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400571f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ecd
call fcn.140003e94
lea rcx, [rbp + 0xb0]
call fcn.140019350
nop
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0xd8]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0xd8], eax
mov edx, 2
lea rcx, [rbp + 0x730]
call fcn.140223420
mov rcx, qword [rbp + 0xc0]
movsxd r8, dword [rcx + 4]
lea rcx, [rbp + 0xc0]
add rcx, r8
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
mov word [rbp + rcx + 0x118], di
mov rax, qword [rbp + 0xc0]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0xd8], 4
mov edx, ebx
lea rcx, [rbp + 0xc0]
call fcn.140019580
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0xc8]
call fcn.140019f80
nop
lea rdx, [rbp + 0x6b0]
cmp qword [rbp + 0x6c8], 7
cmova rdx, qword [rbp + 0x6b0]
lea rcx, [r15 + 0x50]
test rdx, rdx
jne 0x1400572c2
mov r8d, r12d
jmp 0x1400572d0
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400572c5
call fcn.140002b6c
nop
mov rdx, qword [rbp + 0x6c8]
cmp rdx, 7
jbe 0x14005731c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057317
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ed3
call fcn.140003e94
lea rcx, [rbp - 0x50]
call fcn.140019350
nop
mov rax, qword [rbp - 0x40]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx - 0x28]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx - 0x28], eax
mov edx, 2
lea rcx, [rbp + 0x710]
call fcn.140223420
mov rcx, qword [rbp - 0x40]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp - 0x40]
add rcx, rdx
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp - 0x40]
movsxd rcx, dword [rax + 4]
mov word [rbp + rcx + 0x18], di
mov rax, qword [rbp - 0x40]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx - 0x28], 4
mov edx, r14d
lea rcx, [rbp - 0x40]
call fcn.140019580
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp - 0x38]
call fcn.140019f80
nop
lea rdx, [rbp + 0x6b0]
cmp qword [rbp + 0x6c8], 7
cmova rdx, qword [rbp + 0x6b0]
lea rcx, [r15 + 0x58]
test rdx, rdx
jne 0x1400573c1
mov r8d, r12d
jmp 0x1400573cf
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400573c4
call fcn.140002b6c
nop
mov rdx, qword [rbp + 0x6c8]
cmp rdx, 7
jbe 0x14005741b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057416
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057ed9
call fcn.140003e94
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x140057a7f
call fcn.140020e90
mov rdi, rax
lea rcx, [rbp + 0x4b0]
call fcn.140019350
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x6f0], xmm0
mov qword [rbp + 0x700], r12
mov qword [rbp + 0x708], 7
mov word [rbp + 0x6f0], r12w
lea rdx, str.TRACE
lea rcx, [rbp + 0x6f0]
call fcn.1400182b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x710], xmm0
mov rdx, r12
mov qword [rbp + 0x720], rdx
mov r8d, 7
mov qword [rbp + 0x728], r8
mov word [rbp + 0x710], r12w
mov ebx, r12d
cmp dword [rdi + 0x10], 0
jle 0x140057519
cmp ebx, 0xa
jge 0x140057519
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x710]
cmp rax, 2
jb 0x1400574e8
lea rax, [rdx + 2]
mov qword [rbp + 0x720], rax
cmp r8, 7
cmova rcx, qword [rbp + 0x710]
mov eax, dword [0x1402cda80]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r12w
jmp 0x140057502
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rdi + 0x10]
jge 0x140057519
mov r8, qword [rbp + 0x728]
mov rdx, qword [rbp + 0x720]
jmp 0x1400574a8
xorps xmm0, xmm0
movups xmmword [rbp + 0x750], xmm0
mov qword [rbp + 0x760], r12
mov qword [rbp + 0x768], 7
mov word [rbp + 0x750], r12w
movups xmmword [rbp + 0x730], xmm0
mov qword [rbp + 0x740], r12
mov qword [rbp + 0x748], 7
mov word [rbp + 0x730], r12w
call fcn.140231ccc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0x6b0]
call fcn.140231e1c
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0x750]
call fcn.1400182b0
lea rcx, [rbp + 0x5b0]
call fcn.140019350
nop
cmp dword [rdi + 0x14], 0
jne 0x1400575b3
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x5c0]
call fcn.140012dc0
jmp 0x1400575d8
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rdi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, qword [0x1402d47b0]
lea rcx, [rbp + 0x5c0]
call fcn.140021890
lea rdx, [rbp + 0x7d0]
lea rcx, [rbp + 0x5c8]
call fcn.140019f80
nop
mov rdx, qword [rbp + 0x748]
cmp rdx, 7
jbe 0x140057632
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x730]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005762d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057edf
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x7d0]
movups xmmword [rbp + 0x730], xmm0
movups xmm1, xmmword [rbp + 0x7e0]
movups xmmword [rbp + 0x740], xmm1
lea rcx, [rbp + 0x5b0]
call fcn.140019240
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rsp + 0x38]
call fcn.1402233f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rsp + 0x48]
call fcn.1402233f8
mov rcx, qword [rbp + 0x4c0]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x4c0]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x750]
cmp qword [rbp + 0x768], 7
cmova rdx, qword [rbp + 0x750]
mov r8, qword [rbp + 0x760]
lea rcx, [rbp + 0x4c0]
call fcn.140016b40
lea rdx, [0x1402cd5bc]
mov rcx, rax
call fcn.140016880
mov rdi, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rbx + 8]
call qword [rbx]
mov edx, 6
lea rcx, [rsp + 0x58]
call fcn.140223420
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
mov word [rcx + rdi + 0x58], 0x30
mov edx, 3
lea rcx, [rsp + 0x68]
call fcn.14022340c
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x730]
cmp qword [rbp + 0x748], 7
cmova rdx, qword [rbp + 0x730]
mov r8, qword [rbp + 0x740]
mov rcx, rdi
call fcn.140016b40
mov rbx, rax
mov edx, 5
lea rcx, [rsp + 0x78]
call fcn.140223420
mov rdi, rax
lea rdx, [0x1402cd5bc]
mov rcx, rbx
call fcn.140016880
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rdi + 8]
call qword [rdi]
mov rcx, qword [rbx]
movsxd rdx, dword [rcx + 4]
mov word [rdx + rbx + 0x58], 0x20
mov edx, 0x40
lea rcx, [rbp - 0x78]
call fcn.1402233f8
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x6f0]
cmp qword [rbp + 0x708], 7
cmova rdx, qword [rbp + 0x6f0]
mov r8, qword [rbp + 0x700]
mov rcx, rbx
call fcn.140016b40
lea rbx, [rbp + 0x710]
cmp qword [rbp + 0x728], 7
cmova rbx, qword [rbp + 0x710]
lea rdx, [0x1402cdad0]
mov rcx, rax
call fcn.140016880
mov rcx, rax
mov rdx, rbx
call fcn.140016880
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14032b0dc], eax
jg 0x140057ee5
lea rdx, [rbp + 0x7d0]
lea rcx, [rbp + 0x4c8]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x140057885
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057880
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f3d
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x7d0]
movups xmmword [0x14031c620], xmm0
movups xmm1, xmmword [rbp + 0x7e0]
movups xmmword [0x14031c630], xmm1
mov rdx, qword [rbp + 0x748]
cmp rdx, 7
jbe 0x1400578e7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x730]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400578e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f43
call fcn.140003e94
mov qword [rbp + 0x740], r12
mov qword [rbp + 0x748], 7
mov word [rbp + 0x730], r12w
mov rdx, qword [rbp + 0x768]
cmp rdx, 7
jbe 0x140057947
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x750]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057942
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f49
call fcn.140003e94
mov qword [rbp + 0x760], r12
mov qword [rbp + 0x768], 7
mov word [rbp + 0x750], r12w
mov rdx, qword [rbp + 0x728]
cmp rdx, 7
jbe 0x1400579a7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x710]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400579a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f4f
call fcn.140003e94
mov qword [rbp + 0x720], r12
mov qword [rbp + 0x728], 7
mov word [rbp + 0x710], r12w
mov rdx, qword [rbp + 0x708]
cmp rdx, 7
jbe 0x140057a07
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057a02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f55
call fcn.140003e94
mov qword [rbp + 0x700], r12
mov qword [rbp + 0x708], 7
mov word [rbp + 0x6f0], r12w
lea rcx, [rbp + 0x4b0]
call fcn.140019240
call fcn.140020e90
lea rdx, [0x14031c620]
cmp qword [reloc.OLEAUT32.dll_VariantInit], 7
cmova rdx, qword [0x14031c620]
mov r8, qword [0x14031c630]
mov rcx, rax
call fcn.140016b40
lea rdx, str.CPU_Type:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
mov edx, r14d
call fcn.140019580
mov rcx, rax
call fcn.140017a70
mov edi, 0x30
lea rcx, [rbp - 0x50]
call fcn.140019240
nop
lea rcx, [rbp + 0xb0]
call fcn.140019240
nop
lea rcx, [rbp + 0x1b0]
call fcn.140019240
nop
lea rcx, [rbp + 0x2b0]
call fcn.140019240
lea r8, [rbp + 0x6b0]
mov edx, 1
mov rcx, r13
call fcn.1400585d0
test al, al
je 0x140057e2b
mov ebx, dword [rbp + 0x6bc]
shl rbx, 0x20
mov eax, dword [rbp + 0x6b0]
or rbx, rax
lea rcx, [rbp + 0x3b0]
call fcn.140019350
nop
mov rax, qword [rbp + 0x3c0]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x3d8]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0x3d8], eax
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp - 0x68]
call fcn.140223420
mov rcx, qword [rbp + 0x3c0]
movsxd r8, dword [rcx + 4]
lea rcx, [rbp + 0x3c0]
add rcx, r8
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp + 0x3c0]
movsxd rcx, dword [rax + 4]
mov word [rbp + rcx + 0x418], di
mov rax, qword [rbp + 0x3c0]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x3d8], 4
mov rdx, rbx
lea rcx, [rbp + 0x3c0]
call fcn.1400227d0
lea rdx, [rbp + 0x6d0]
lea rcx, [rbp + 0x3c8]
call fcn.140019f80
nop
lea rdx, [rbp + 0x6d0]
cmp qword [rbp + 0x6e8], 7
cmova rdx, qword [rbp + 0x6d0]
lea rcx, [r15 + 0x60]
test rdx, rdx
jne 0x140057ba4
mov r8d, r12d
jmp 0x140057bbb
mov r8, rsi
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140057bb0
call fcn.140002b6c
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x140057c3b
call fcn.140020e90
mov rcx, rax
mov edx, 3
call fcn.1400211b0
mov rbx, rax
call fcn.140020e90
mov rdx, rbx
cmp qword [rbx + 0x18], 7
jbe 0x140057bf2
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.CPU_ID:
mov rcx, rax
call fcn.140014ab0
lea rdx, [rbp + 0x6d0]
cmp qword [rbp + 0x6e8], 7
cmova rdx, qword [rbp + 0x6d0]
mov r8, qword [rbp + 0x6e0]
mov rcx, rax
call fcn.140016b40
mov rcx, rax
call fcn.140017a70
mov rax, qword [rbp + 0x6e0]
lea rcx, [rax - 6]
cmp rax, 6
cmovb rcx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x6b0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x6c0], xmm1
cmp rax, rcx
jb 0x140057f5b
sub rax, rcx
mov r8, rsi
cmp rax, rsi
cmovb r8, rax
lea rax, [rbp + 0x6d0]
cmp qword [rbp + 0x6e8], 7
cmova rax, qword [rbp + 0x6d0]
lea rdx, [rax + rcx*2]
lea rcx, [rbp + 0x6b0]
call fcn.14000998c
nop
mov rdx, qword [rbp + 0x6e8]
cmp rdx, 7
jbe 0x140057ce7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057ce2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f61
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x6b0]
movups xmmword [rbp + 0x6d0], xmm0
movups xmm1, xmmword [rbp + 0x6c0]
movups xmmword [rbp + 0x6e0], xmm1
lea rdx, [rbp + 0x6d0]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 7
cmova rdx, rcx
lea rcx, [r15 + 0x68]
test rdx, rdx
jne 0x140057d30
mov esi, r12d
jmp 0x140057d3a
inc rsi
cmp word [rdx + rsi*2], 0
jne 0x140057d30
mov r8d, esi
call fcn.140002b6c
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x140057dbe
call fcn.140020e90
mov rcx, rax
mov edx, 3
call fcn.1400211b0
mov rbx, rax
call fcn.140020e90
mov rdx, rbx
cmp qword [rbx + 0x18], 7
jbe 0x140057d74
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.CPU_ID_Short:
mov rcx, rax
call fcn.140014ab0
lea rdx, [rbp + 0x6d0]
cmp qword [rbp + 0x6e8], 7
cmova rdx, qword [rbp + 0x6d0]
mov r8, qword [rbp + 0x6e0]
mov rcx, rax
call fcn.140016b40
mov rcx, rax
call fcn.140017a70
nop
mov rdx, qword [rbp + 0x6e8]
cmp rdx, 7
jbe 0x140057e04
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x6d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057dff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057f67
call fcn.140003e94
mov qword [rbp + 0x6e0], r12
mov qword [rbp + 0x6e8], 7
mov word [rbp + 0x6d0], r12w
lea rcx, [rbp + 0x3b0]
call fcn.140019240
nop
mov rdx, qword [rbp + 0x7c8]
cmp rdx, 7
jbe 0x140057e6d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140057e68
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140057e9f
call fcn.140003e94
mov al, 1
mov rcx, qword [rbp + 0x7f0]
xor rcx, rsp
call fcn.140220ab0
lea r11, [rsp + 0x900]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14022a250
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
call fcn.14022a250
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
lea rcx, [0x14032b0dc]
call fcn.140220de4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x14005782b
xorps xmm0, xmm0
movups xmmword [0x14031c620], xmm0
movdqa xmm1, xmmword [0x1402d4800]
movdqu xmmword [0x14031c630], xmm1
mov word [0x14031c620], r12w
lea rcx, [0x14026f550]
call fcn.140220cf8
lea rcx, [0x14032b0dc]
call fcn.140220d78
jmp 0x14005782b
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.140014a90
nop
call fcn.14022a250
nop
call fcn.14022a250
int3