Function at 0x1400382b0
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 - 0xcd0]
sub rsp, 0xdd0
mov rax, qword [0x14031b940]
xor rax, rsp
mov qword [rbp + 0xcc8], rax
mov edi, r9d
mov dword [rsp + 0x40], r9d
mov r13d, r8d
mov rsi, rdx
mov rax, qword [rbp + 0xd30]
mov qword [rsp + 0x30], rax
xor r14d, r14d
mov byte [rbp + 0x743], r14b
movzx ecx, byte [rdx + 8]
shl cx, 8
movzx eax, byte [rdx + 9]
or cx, ax
movzx eax, cl
and al, 0x1f
add al, 0x40
mov byte [rbp + 0x742], al
movzx eax, cx
shr ax, 5
and al, 0x1f
add al, 0x40
mov byte [rbp + 0x741], al
shr cx, 0xa
and cl, 0x1f
add cl, 0x40
mov byte [rbp + 0x740], cl
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x1400383a4
call fcn.140020e90
mov rcx, rax
lea edx, [r14 + 3]
call fcn.1400211b0
mov rbx, rax
call fcn.140020e90
mov rdx, rbx
cmp qword [rbx + 0x18], 7
jbe 0x140038372
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.Manufacturer_ID:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
lea rdx, [rbp + 0x740]
call fcn.140014ab0
mov rcx, rax
call fcn.140017a70
movzx ebx, byte [rsi + 0xb]
shl bx, 8
movzx eax, byte [rsi + 0xa]
or bx, ax
lea rcx, [rbp + 0x240]
call fcn.14003be40
nop
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x268], 4
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov byte [rbp + rcx + 0x298], 0x30
mov rax, qword [rbp + 0x250]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x268]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0x268], eax
mov rax, qword [rbp + 0x250]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x268], 4
movzx edx, bx
lea rcx, [rbp + 0x250]
call fcn.14003c260
movzx ebx, byte [rsi + 0xb]
shl ebx, 8
movzx eax, byte [rsi + 0xa]
or ebx, eax
shl ebx, 8
movzx eax, byte [rsi + 9]
or ebx, eax
shl ebx, 8
movzx eax, byte [rsi + 8]
or ebx, eax
lea rcx, [rbp + 0x140]
call fcn.14003be40
nop
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x168], 8
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
mov byte [rbp + rcx + 0x198], 0x30
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x168]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx + 0x168], eax
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx + 0x168], 4
mov edx, ebx
lea rcx, [rbp + 0x150]
call fcn.14003c060
lea rdx, [rbp + 0x908]
lea rcx, [rbp + 0x140]
call fcn.14003bd60
nop
cmp qword [rax + 0x18], 0xf
jbe 0x1400384e5
mov rax, qword [rax]
lea rcx, [rbp + 0xa68]
mov qword [rbp + 0xa60], rcx
mov r8d, 3
mov rdx, rax
lea rcx, [rbp + 0xa60]
call fcn.1400140e0
nop
mov rdx, qword [rbp + 0xa60]
lea rcx, [rbp + 0x8c8]
call fcn.1400092fc
nop
lea rax, [rbp + 0xa68]
mov rcx, qword [rbp + 0xa60]
cmp rcx, rax
je 0x140038536
call fcn.14022fb58
nop
mov r8, qword [rbp + 0x920]
cmp r8, 0xf
jbe 0x140038556
mov rdx, qword [rbp + 0x908]
lea rcx, [rbp + 0x908]
call fcn.140006624
movdqa xmm0, xmmword [0x1402d4860]
movdqu xmmword [rbp + 0x918], xmm0
mov byte [rbp + 0x908], 0
lea rbx, vtable.srl::Name.0
mov qword [rsp + 0x48], rbx
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140039cf9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x8c8]
mov r15, 0xffffffffffffffff
cmp qword [rbp + 0x8e0], 7
jbe 0x1400385c9
mov rdx, qword [rbp + 0x8c8]
test rdx, rdx
jne 0x1400385c9
lea rcx, [rsp + 0x50]
call fcn.140002984
jmp 0x1400385e6
mov r8, r15
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400385d0
lea rcx, [rsp + 0x50]
call fcn.140002b6c
nop
mov edx, 0x116ee
lea rcx, [rbp + 0xa28]
call fcn.140022530
nop
mov r9d, edi
lea r8, [rsp + 0x48]
mov rdx, rax
call fcn.1400511e0
nop
lea rcx, [rbp + 0xa28]
call fcn.1400226c0
nop
mov qword [rsp + 0x48], rbx
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003863a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x1400386d2
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 0x140038670
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.Monitor_ID:
mov rcx, rax
call fcn.140014ab0
lea rdx, [rbp + 0x8c8]
cmp qword [rbp + 0x8e0], 7
cmova rdx, qword [rbp + 0x8c8]
mov r8, qword [rbp + 0x8d8]
mov rcx, rax
call fcn.140016b40
lea rdx, str._At_Index:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
mov edx, edi
call fcn.140019580
mov rcx, rax
call fcn.140017a70
xorps xmm0, xmm0
movups xmmword [rbp + 0x828], xmm0
mov qword [rbp + 0x838], r14
mov qword [rbp + 0x840], SafeArrayGetDim
mov byte [rbp + 0x828], 0
movups xmmword [rbp + 0x808], xmm0
mov qword [rbp + 0x818], r14
mov qword [rbp + 0x820], SafeArrayGetDim
mov byte [rbp + 0x808], 0
movups xmmword [rbp + 0x7c8], xmm0
mov qword [rbp + 0x7d8], r14
mov qword [rbp + 0x7e0], SafeArrayGetDim
mov byte [rbp + 0x7c8], 0
mov r14d, 0x36
mov r12d, r14d
nop
movzx edi, byte [rsi + r14 + 3]
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x1400387a5
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 0x140038778
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.EDID_Type:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
mov edx, edi
call fcn.140012dc0
mov rcx, rax
call fcn.140017a70
cmp byte [rsi + r14], 0
jne 0x140038a21
cmp byte [rsi + r14 + 1], 0
jne 0x140038a21
cmp byte [rsi + r14 + 2], 0
jne 0x140038a21
lea eax, [rdi + 4]
test al, 0xfc
jne 0x140038a21
cmp dil, 0xfd
je 0x140038a21
movsxd rcx, r12d
add rcx, rsi
movzx eax, byte [rcx + 5]
mov byte [rbp + 0xc80], al
movzx eax, byte [rcx + 6]
mov byte [rbp + 0xc81], al
movzx eax, byte [rcx + 7]
mov byte [rbp + 0xc82], al
movzx eax, byte [rcx + 8]
mov byte [rbp + 0xc83], al
movzx eax, byte [rcx + 9]
mov byte [rbp + 0xc84], al
movzx eax, byte [rcx + 0xa]
mov byte [rbp + 0xc85], al
movzx eax, byte [rcx + 0xb]
mov byte [rbp + 0xc86], al
movzx eax, byte [rcx + 0xc]
mov byte [rbp + 0xc87], al
movzx eax, byte [rcx + 0xd]
mov byte [rbp + 0xc88], al
movzx eax, byte [rcx + 0xe]
mov byte [rbp + 0xc89], al
movzx eax, byte [rcx + 0xf]
mov byte [rbp + 0xc8a], al
movzx eax, byte [rcx + 0x10]
mov byte [rbp + 0xc8b], al
movzx eax, byte [rcx + 0x11]
mov byte [rbp + 0xc8c], al
mov byte [rbp + 0xc8d], 0
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x1400388d0
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 0x14003889e
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140016b40
lea rdx, str.EDID_data:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
lea rdx, [rbp + 0xc80]
call fcn.140014ab0
mov rcx, rax
call fcn.140017a70
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
nop word [rax + rax]
movzx ecx, byte [rbp + rax + 0xc80]
cmp cl, 0xa
je 0x1400388f2
cmp cl, 0x20
jne 0x14003890a
cmp rax, 0x13
jae 0x140039d0f
mov byte [rbp + rax + 0xc80], 0
sub rax, 1
jns 0x1400388e0
mov ecx, edi
sub ecx, 0xfc
je 0x1400389ba
sub ecx, 2
je 0x140038970
cmp ecx, 1
jne 0x140038a21
lea rax, [rbp + 0xc80]
mov rdi, r15
inc rdi
cmp byte [rax + rdi], 0
jne 0x140038930
mov rax, qword [rbp + 0x820]
cmp rdi, rax
ja 0x140038964
lea rbx, [rbp + 0x808]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x808]
mov qword [rbp + 0x818], rdi
jmp 0x1400389f3
lea rcx, [rbp + 0x808]
jmp 0x140038a12
lea rax, [rbp + 0xc80]
mov rdi, r15
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140038980
mov rax, qword [rbp + 0x840]
cmp rdi, rax
ja 0x1400389b1
lea rbx, [rbp + 0x828]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x828]
mov qword [rbp + 0x838], rdi
jmp 0x1400389f3
lea rcx, [rbp + 0x828]
jmp 0x140038a12
lea rax, [rbp + 0xc80]
mov rdi, r15
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400389c4
mov rax, qword [rbp + 0x7e0]
cmp rdi, rax
ja 0x140038a0b
lea rbx, [rbp + 0x7c8]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x7c8]
mov qword [rbp + 0x7d8], rdi
mov r8, rdi
lea rdx, [rbp + 0xc80]
mov rcx, rbx
call fcn.1402544d0
mov byte [rbx + rdi], 0
jmp 0x140038a21
lea rcx, [rbp + 0x7c8]
lea r9, [rbp + 0xc80]
mov rdx, rdi
call fcn.14003eca0
add r12d, 0x12
add r14, 0x12
cmp r14, 0x7e
jl 0x140038740
lea rdx, [rbp + 0x7c8]
cmp qword [rbp + 0x7e0], 0xf
cmova rdx, qword [rbp + 0x7c8]
lea rax, [rbp + 0xb78]
mov qword [rbp + 0xb70], rax
mov r8d, 3
lea rcx, [rbp + 0xb70]
call fcn.1400140e0
nop
mov rdx, qword [rbp + 0xb70]
lea rcx, [rbp + 0x7e8]
call fcn.1400092fc
nop
lea rax, [rbp + 0xb78]
mov rcx, qword [rbp + 0xb70]
cmp rcx, rax
je 0x140038a97
call fcn.14022fb58
cmp qword [rbp + 0x7f8], 0
jne 0x140038ab2
mov rdx, qword [rsp + 0x30]
lea rcx, [rbp + 0x7e8]
call fcn.14001b0c0
lea rbx, vtable.srl::Name.0
mov qword [rsp + 0x58], rbx
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140039d04
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
lea rdx, [rbp + 0x7e8]
cmp qword [rbp + 0x800], 7
jbe 0x140038b07
mov rdx, qword [rbp + 0x7e8]
test rdx, rdx
jne 0x140038b07
lea rcx, [rsp + 0x60]
call fcn.140002984
jmp 0x140038b26
mov r8, r15
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140038b10
lea rcx, [rsp + 0x60]
call fcn.140002b6c
nop
mov edx, 0x116ed
lea rcx, [rbp + 0x9f8]
call fcn.140022530
nop
mov r14d, dword [rsp + 0x40]
mov r9d, r14d
lea r8, [rsp + 0x58]
mov rdx, rax
call fcn.1400511e0
nop
lea rax, vtable.srl::GroupID.0
mov qword [rbp + 0x9f8], rax
lea rcx, [rbp + 0xa00]
call fcn.140009670
nop
mov qword [rsp + 0x58], rbx
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140038b8d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [rsp + 0x70]
call fcn.140019350
nop
xor r12d, r12d
mov ebx, r12d
lea edi, [r12 + 0x30]
test r13d, r13d
je 0x140038c24
test ebx, ebx
je 0x140038bb5
lea rcx, [rbp - 0x80]
call fcn.14003dfe0
mov rax, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx - 0x68]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rbp + rcx - 0x68], eax
mov edx, 2
lea rcx, [rbp + 0x80]
call fcn.140223820
mov rcx, qword [rbp - 0x80]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp - 0x80]
add rcx, rdx
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
mov word [rbp + rcx - 0x28], di
mov rax, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
or dword [rbp + rcx - 0x68], 4
movzx edx, byte [rsi]
lea rcx, [rbp - 0x80]
call fcn.140012dc0
inc ebx
inc rsi
cmp ebx, r13d
jb 0x140038ba8
call fcn.140020e90
lea rsi, [0x14031c620]
cmp dword [rax + 8], 3
jl 0x1400392ae
call fcn.140020e90
mov rdi, rax
lea rcx, [rbp + 0x340]
call fcn.140019350
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x868], xmm0
mov qword [rbp + 0x878], r12
mov qword [rbp + 0x880], 7
mov word [rbp + 0x868], r12w
lea rdx, str.TRACE
lea rcx, [rbp + 0x868]
call fcn.1400182b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x748], xmm0
mov rdx, r12
mov qword [rbp + 0x758], rdx
mov r8d, 7
mov qword [rbp + 0x760], r8
mov word [rbp + 0x748], r12w
mov ebx, r12d
cmp dword [rdi + 0x10], ebx
jle 0x140038d28
cmp ebx, 0xa
jge 0x140038d28
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x748]
cmp rax, 2
jb 0x140038cf7
lea rax, [rdx + 2]
mov qword [rbp + 0x758], rax
cmp r8, 7
cmova rcx, qword [rbp + 0x748]
mov eax, dword [0x1402cda80]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r12w
jmp 0x140038d11
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rdi + 0x10]
jge 0x140038d28
mov r8, qword [rbp + 0x760]
mov rdx, qword [rbp + 0x758]
jmp 0x140038cb7
xorps xmm0, xmm0
movups xmmword [rbp + 0x848], xmm0
mov qword [rbp + 0x858], r12
mov qword [rbp + 0x860], 7
mov word [rbp + 0x848], r12w
movups xmmword [rbp + 0x7a8], xmm0
mov qword [rbp + 0x7b8], r12
mov qword [rbp + 0x7c0], 7
mov word [rbp + 0x7a8], r12w
call fcn.1402320cc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0xc98]
call fcn.14023221c
lea rdx, [rbp + 0xc98]
lea rcx, [rbp + 0x848]
call fcn.1400182b0
lea rcx, [rbp + 0x540]
call fcn.140019350
nop
cmp dword [rdi + 0x14], 0
jne 0x140038dc2
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x550]
call fcn.140012dc0
jmp 0x140038de7
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rdi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, qword [0x1402d4800]
lea rcx, [rbp + 0x550]
call fcn.140021890
lea rdx, [rbp + 0x978]
lea rcx, [rbp + 0x558]
call fcn.140019f80
nop
mov rdx, qword [rbp + 0x7c0]
cmp rdx, 7
jbe 0x140038e41
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038e3c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d15
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x978]
movups xmmword [rbp + 0x7a8], xmm0
movups xmm1, xmmword [rbp + 0x988]
movups xmmword [rbp + 0x7b8], xmm1
lea rcx, [rbp + 0x540]
call fcn.140019240
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp + 0x70]
call fcn.1402237f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp + 0xa0]
call fcn.1402237f8
mov rcx, qword [rbp + 0x350]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x350]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x848]
cmp qword [rbp + 0x860], 7
cmova rdx, qword [rbp + 0x848]
mov r8, qword [rbp + 0x858]
lea rcx, [rbp + 0x350]
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, [rbp + 0xb0]
call fcn.140223820
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 r13d, 0x30
mov word [rcx + rdi + 0x58], r13w
lea edx, [r13 - 0x2d]
lea rcx, [rbp + 0xc0]
call fcn.14022380c
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x7a8]
cmp qword [rbp + 0x7c0], 7
cmova rdx, qword [rbp + 0x7a8]
mov r8, qword [rbp + 0x7b8]
mov rcx, rdi
call fcn.140016b40
mov rbx, rax
lea edx, [r13 - 0x2b]
lea rcx, [rbp + 0xd0]
call fcn.140223820
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
lea edx, [r13 + 0x10]
lea rcx, [rbp + 0xe0]
call fcn.1402237f8
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x868]
cmp qword [rbp + 0x880], 7
cmova rdx, qword [rbp + 0x868]
mov r8, qword [rbp + 0x878]
mov rcx, rbx
call fcn.140016b40
lea rbx, [rbp + 0x748]
cmp qword [rbp + 0x760], 7
cmova rbx, qword [rbp + 0x748]
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 0x140039d1b
lea rdx, [rbp + 0x998]
lea rcx, [rbp + 0x358]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x1400390a0
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003909b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d73
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x998]
movups xmmword [0x14031c620], xmm0
movups xmm1, xmmword [rbp + 0x9a8]
movups xmmword [0x14031c630], xmm1
mov rdx, qword [rbp + 0x7c0]
cmp rdx, 7
jbe 0x140039102
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400390fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d79
call fcn.140003e94
mov qword [rbp + 0x7b8], r12
mov qword [rbp + 0x7c0], 7
mov word [rbp + 0x7a8], r12w
mov rdx, qword [rbp + 0x860]
cmp rdx, 7
jbe 0x140039162
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x848]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003915d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d7f
call fcn.140003e94
mov qword [rbp + 0x858], r12
mov qword [rbp + 0x860], 7
mov word [rbp + 0x848], r12w
mov rdx, qword [rbp + 0x760]
cmp rdx, 7
jbe 0x1400391c2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x748]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400391bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d85
call fcn.140003e94
mov qword [rbp + 0x758], r12
mov qword [rbp + 0x760], 7
mov word [rbp + 0x748], r12w
mov rdx, qword [rbp + 0x880]
cmp rdx, 7
jbe 0x140039222
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x868]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003921d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039d8b
call fcn.140003e94
mov qword [rbp + 0x878], r12
mov qword [rbp + 0x880], 7
mov word [rbp + 0x868], r12w
lea rcx, [rbp + 0x340]
call fcn.140019240
call fcn.140020e90
mov rdx, rsi
cmp qword [reloc.OLEAUT32.dll_VariantInit], 7
cmova rdx, qword [0x14031c620]
mov r8, qword [0x14031c630]
mov rcx, rax
call fcn.140016b40
lea rdx, str.Monitor_Name:
mov rcx, rax
call fcn.140014ab0
lea rdx, [rbp + 0x7e8]
cmp qword [rbp + 0x800], 7
cmova rdx, qword [rbp + 0x7e8]
mov r8, qword [rbp + 0x7f8]
mov rcx, rax
call fcn.140016b40
mov rcx, rax
call fcn.140017a70
jmp 0x1400392b4
mov r13d, 0x30
call fcn.140020e90
cmp dword [rax + 8], 5
jl 0x140039950
lea rdx, [rbp + 0x8e8]
lea rcx, [rbp - 0x78]
call fcn.140019f80
nop
call fcn.140020e90
mov rdi, rax
lea rcx, [rbp + 0x440]
call fcn.140019350
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x8a8], xmm0
mov qword [rbp + 0x8b8], r12
mov qword [rbp + 0x8c0], 7
mov word [rbp + 0x8a8], r12w
lea rdx, str.DUMP
lea rcx, [rbp + 0x8a8]
call fcn.1400182b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x788], xmm0
mov rdx, r12
mov qword [rbp + 0x798], rdx
mov r8d, 7
mov qword [rbp + 0x7a0], r8
mov word [rbp + 0x788], r12w
mov ebx, r12d
cmp dword [rdi + 0x10], ebx
jle 0x1400393c2
cmp ebx, 0xa
jge 0x1400393c2
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x788]
cmp rax, 2
jb 0x140039391
lea rax, [rdx + 2]
mov qword [rbp + 0x798], rax
cmp r8, 7
cmova rcx, qword [rbp + 0x788]
mov eax, dword [0x1402cda80]
mov dword [rcx + rdx*2], eax
mov word [rcx + rdx*2 + 4], r12w
jmp 0x1400393ab
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rdi + 0x10]
jge 0x1400393c2
mov r8, qword [rbp + 0x7a0]
mov rdx, qword [rbp + 0x798]
jmp 0x140039351
xorps xmm0, xmm0
movups xmmword [rbp + 0x888], xmm0
mov qword [rbp + 0x898], r12
mov qword [rbp + 0x8a0], 7
mov word [rbp + 0x888], r12w
movups xmmword [rbp + 0x768], xmm0
mov qword [rbp + 0x778], r12
mov qword [rbp + 0x780], 7
mov word [rbp + 0x768], r12w
call fcn.1402320cc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0xcb0]
call fcn.14023221c
lea rdx, [rbp + 0xcb0]
lea rcx, [rbp + 0x888]
call fcn.1400182b0
lea rcx, [rbp + 0x640]
call fcn.140019350
nop
cmp dword [rdi + 0x14], 0
jne 0x14003945c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x650]
call fcn.140012dc0
jmp 0x140039481
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rdi + 0x14]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm1, qword [0x1402d4800]
lea rcx, [rbp + 0x650]
call fcn.140021890
lea rdx, [rbp + 0x9b8]
lea rcx, [rbp + 0x658]
call fcn.140019f80
mov r8, qword [rbp + 0x780]
cmp r8, 7
jbe 0x1400394b4
mov rdx, qword [rbp + 0x768]
lea rcx, [rbp + 0x768]
call fcn.140009718
movups xmm0, xmmword [rbp + 0x9b8]
movups xmmword [rbp + 0x768], xmm0
movups xmm1, xmmword [rbp + 0x9c8]
movups xmmword [rbp + 0x778], xmm1
lea rcx, [rbp + 0x640]
call fcn.140019240
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp + 0x90]
call fcn.1402237f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp + 0xf0]
call fcn.1402237f8
mov rcx, qword [rbp + 0x450]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x450]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x888]
cmp qword [rbp + 0x8a0], 7
cmova rdx, qword [rbp + 0x888]
mov r8, qword [rbp + 0x898]
lea rcx, [rbp + 0x450]
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, [rbp + 0x100]
call fcn.140223820
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], r13w
mov edx, 3
lea rcx, [rbp + 0x110]
call fcn.14022380c
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
add rcx, rdi
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x768]
cmp qword [rbp + 0x780], 7
cmova rdx, qword [rbp + 0x768]
mov r8, qword [rbp + 0x778]
mov rcx, rdi
call fcn.140016b40
mov rbx, rax
mov edx, 5
lea rcx, [rbp + 0x120]
call fcn.140223820
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 r8, dword [rcx + 4]
mov word [r8 + rbx + 0x58], 0x20
mov edx, 0x40
lea rcx, [rbp + 0x130]
call fcn.1402237f8
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rbp + 0x8a8]
cmp qword [rbp + 0x8c0], 7
cmova rdx, qword [rbp + 0x8a8]
mov r8, qword [rbp + 0x8b8]
mov rcx, rbx
call fcn.140016b40
lea rbx, [rbp + 0x788]
cmp qword [rbp + 0x7a0], 7
cmova rbx, qword [rbp + 0x788]
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 0x140039d91
lea rdx, [rbp + 0x9d8]
lea rcx, [rbp + 0x458]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x140039714
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003970f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039de9
call fcn.140003e94
movups xmm0, xmmword [rbp + 0x9d8]
movups xmmword [0x14031c620], xmm0
movups xmm1, xmmword [rbp + 0x9e8]
movups xmmword [0x14031c630], xmm1
mov rdx, qword [rbp + 0x780]
cmp rdx, 7
jbe 0x140039776
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x768]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039771
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039def
call fcn.140003e94
mov qword [rbp + 0x778], r12
mov qword [rbp + 0x780], 7
mov word [rbp + 0x768], r12w
mov rdx, qword [rbp + 0x8a0]
cmp rdx, 7
jbe 0x1400397d6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x888]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400397d1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039df5
call fcn.140003e94
mov qword [rbp + 0x898], r12
mov qword [rbp + 0x8a0], 7
mov word [rbp + 0x888], r12w
mov rdx, qword [rbp + 0x7a0]
cmp rdx, 7
jbe 0x140039836
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x788]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039831
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039dfb
call fcn.140003e94
mov qword [rbp + 0x798], r12
mov qword [rbp + 0x7a0], 7
mov word [rbp + 0x788], r12w
mov rdx, qword [rbp + 0x8c0]
cmp rdx, 7
jbe 0x140039896
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x8a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039891
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e01
call fcn.140003e94
mov qword [rbp + 0x8b8], r12
mov qword [rbp + 0x8c0], 7
mov word [rbp + 0x8a8], r12w
lea rcx, [rbp + 0x440]
call fcn.140019240
call fcn.140020e90
cmp qword [reloc.OLEAUT32.dll_VariantInit], 7
cmova rsi, qword [0x14031c620]
mov r8, qword [0x14031c630]
mov rdx, rsi
mov rcx, rax
call fcn.140016b40
lea rdx, str.Monitor_EDID:
mov rcx, rax
call fcn.140014ab0
mov rcx, rax
lea rdx, [0x1402cfcf8]
call fcn.140014ab0
lea rdx, [rbp + 0x8e8]
cmp qword [rbp + 0x900], 7
cmova rdx, qword [rbp + 0x8e8]
mov r8, qword [rbp + 0x8f8]
mov rcx, rax
call fcn.140016b40
mov rcx, rax
call fcn.140017a70
nop
mov r8, qword [rbp + 0x900]
cmp r8, 7
jbe 0x140039950
mov rdx, qword [rbp + 0x8e8]
lea rcx, [rbp + 0x8e8]
call fcn.140009718
lea rdx, [rbp + 0x928]
lea rcx, [rbp - 0x78]
call fcn.140019f80
nop
lea rbx, vtable.srl::Name.0
mov qword [rsp + 0x30], rbx
call fcn.140010070
mov rcx, rax
test rax, rax
je 0x140039e07
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x928]
cmp qword [rbp + 0x940], 7
jbe 0x1400399b6
mov rdx, qword [rbp + 0x928]
test rdx, rdx
jne 0x1400399b6
lea rcx, [rsp + 0x38]
call fcn.140002984
jmp 0x1400399d6
mov r8, r15
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400399c0
lea rcx, [rsp + 0x38]
call fcn.140002b6c
nop
mov edx, 0x11701
lea rcx, [rbp + 0x948]
call fcn.140022530
nop
mov r9d, r14d
lea r8, [rsp + 0x30]
mov rdx, rax
call fcn.1400511e0
nop
lea rax, vtable.srl::GroupID.0
mov qword [rbp + 0x948], rax
mov rdx, qword [rbp + 0x968]
cmp rdx, 7
jbe 0x140039a4d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x950]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039a48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e12
call fcn.140003e94
movdqa xmm0, xmmword [0x1402d4850]
movdqu xmmword [rbp + 0x960], xmm0
mov word [rbp + 0x950], r12w
mov qword [rsp + 0x30], rbx
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x140039a88
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rax, vtable.srl::Value.0
mov qword [rsp + 0x30], rax
mov rdx, qword [rbp + 0x940]
cmp rdx, 7
jbe 0x140039adb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x928]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039ad5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e18
call fcn.140003e94
nop
lea rcx, [rsp + 0x70]
call fcn.140019240
nop
mov rdx, qword [rbp + 0x800]
cmp rdx, 7
jbe 0x140039b2c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039b27
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e1e
call fcn.140003e94
mov qword [rbp + 0x7f8], r12
mov qword [rbp + 0x800], 7
mov word [rbp + 0x7e8], r12w
mov rdx, qword [rbp + 0x7e0]
cmp rdx, 0xf
jbe 0x140039b87
inc rdx
mov rcx, qword [rbp + 0x7c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039b82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e24
call fcn.140003e94
mov qword [rbp + 0x7d8], r12
mov qword [rbp + 0x7e0], SafeArrayGetDim
mov byte [rbp + 0x7c8], 0
mov rdx, qword [rbp + 0x820]
cmp rdx, 0xf
jbe 0x140039be1
inc rdx
mov rcx, qword [rbp + 0x808]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039bdc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e2a
call fcn.140003e94
mov qword [rbp + 0x818], r12
mov qword [rbp + 0x820], SafeArrayGetDim
mov byte [rbp + 0x808], 0
mov rdx, qword [rbp + 0x840]
cmp rdx, 0xf
jbe 0x140039c3b
inc rdx
mov rcx, qword [rbp + 0x828]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039c36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039e30
call fcn.140003e94
mov qword [rbp + 0x838], r12
mov qword [rbp + 0x840], SafeArrayGetDim
mov byte [rbp + 0x828], 0
mov rdx, qword [rbp + 0x8e0]
cmp rdx, 7
jbe 0x140039c96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x8c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039c91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039cf3
call fcn.140003e94
mov qword [rbp + 0x8d8], r12
mov qword [rbp + 0x8e0], 7
mov word [rbp + 0x8c8], r12w
lea rcx, [rbp + 0x140]
call fcn.140039e40
nop
lea rcx, [rbp + 0x240]
call fcn.140039e40
mov rcx, qword [rbp + 0xcc8]
xor rcx, rsp
call fcn.140220eb0
mov rbx, qword [rsp + 0xe10]
add rsp, 0xdd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14022a650
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
call fcn.140221364
nop
call fcn.14022a650
nop
lea rcx, [0x14032b0dc]
call fcn.1402211e4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x140039046
xorps xmm0, xmm0
movups xmmword [0x14031c620], xmm0
movdqa xmm1, xmmword [0x1402d4850]
movdqu xmmword [0x14031c630], xmm1
mov word [0x14031c620], r12w
lea rcx, [0x14026f950]
call fcn.1402210f8
lea rcx, [0x14032b0dc]
call fcn.140221178
jmp 0x140039046
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
lea rcx, [0x14032b0dc]
call fcn.1402211e4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x1400396ba
xorps xmm0, xmm0
movups xmmword [0x14031c620], xmm0
movdqa xmm1, xmmword [0x1402d4850]
movdqu xmmword [0x14031c630], xmm1
mov word [0x14031c620], r12w
lea rcx, [0x14026f950]
call fcn.1402210f8
lea rcx, [0x14032b0dc]
call fcn.140221178
jmp 0x1400396ba
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
nop
call fcn.14022a650
int3