Function at 0x1400380e0
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 0x1400381d4
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 0x1400381a2
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.14003bc70
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.14003c090
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.14003bc70
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.14003be90
lea rdx, [rbp + 0x908]
lea rcx, [rbp + 0x140]
call fcn.14003bb90
nop
cmp qword [rax + 0x18], 0xf
jbe 0x140038315
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 0x140038366
call fcn.14022f758
nop
mov r8, qword [rbp + 0x920]
cmp r8, 0xf
jbe 0x140038386
mov rdx, qword [rbp + 0x908]
lea rcx, [rbp + 0x908]
call fcn.140006624
movdqa xmm0, xmmword [0x1402d4810]
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 0x140039b29
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 0x1400383f9
mov rdx, qword [rbp + 0x8c8]
test rdx, rdx
jne 0x1400383f9
lea rcx, [rsp + 0x50]
call fcn.140002984
jmp 0x140038416
mov r8, r15
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140038400
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.140051010
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 0x14003846a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.140020e90
cmp dword [rax + 8], 3
jl 0x140038502
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 0x1400384a0
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 0x1400385d5
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 0x1400385a8
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 0x140038851
cmp byte [rsi + r14 + 1], 0
jne 0x140038851
cmp byte [rsi + r14 + 2], 0
jne 0x140038851
lea eax, [rdi + 4]
test al, 0xfc
jne 0x140038851
cmp dil, 0xfd
je 0x140038851
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 0x140038700
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 0x1400386ce
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 0x140038722
cmp cl, 0x20
jne 0x14003873a
cmp rax, 0x13
jae 0x140039b3f
mov byte [rbp + rax + 0xc80], 0
sub rax, 1
jns 0x140038710
mov ecx, edi
sub ecx, 0xfc
je 0x1400387ea
sub ecx, 2
je 0x1400387a0
cmp ecx, 1
jne 0x140038851
lea rax, [rbp + 0xc80]
mov rdi, r15
inc rdi
cmp byte [rax + rdi], 0
jne 0x140038760
mov rax, qword [rbp + 0x820]
cmp rdi, rax
ja 0x140038794
lea rbx, [rbp + 0x808]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x808]
mov qword [rbp + 0x818], rdi
jmp 0x140038823
lea rcx, [rbp + 0x808]
jmp 0x140038842
lea rax, [rbp + 0xc80]
mov rdi, r15
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400387b0
mov rax, qword [rbp + 0x840]
cmp rdi, rax
ja 0x1400387e1
lea rbx, [rbp + 0x828]
cmp rax, 0xf
cmova rbx, qword [rbp + 0x828]
mov qword [rbp + 0x838], rdi
jmp 0x140038823
lea rcx, [rbp + 0x828]
jmp 0x140038842
lea rax, [rbp + 0xc80]
mov rdi, r15
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400387f4
mov rax, qword [rbp + 0x7e0]
cmp rdi, rax
ja 0x14003883b
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.1402540d0
mov byte [rbx + rdi], 0
jmp 0x140038851
lea rcx, [rbp + 0x7c8]
lea r9, [rbp + 0xc80]
mov rdx, rdi
call fcn.14003ead0
add r12d, 0x12
add r14, 0x12
cmp r14, 0x7e
jl 0x140038570
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 0x1400388c7
call fcn.14022f758
cmp qword [rbp + 0x7f8], 0
jne 0x1400388e2
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 0x140039b34
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 0x140038937
mov rdx, qword [rbp + 0x7e8]
test rdx, rdx
jne 0x140038937
lea rcx, [rsp + 0x60]
call fcn.140002984
jmp 0x140038956
mov r8, r15
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140038940
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.140051010
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 0x1400389bd
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 0x140038a54
test ebx, ebx
je 0x1400389e5
lea rcx, [rbp - 0x80]
call fcn.14003de10
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.140223420
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 0x1400389d8
call fcn.140020e90
lea rsi, [0x14031c620]
cmp dword [rax + 8], 3
jl 0x1400390de
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 0x140038b58
cmp ebx, 0xa
jge 0x140038b58
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x748]
cmp rax, 2
jb 0x140038b27
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 0x140038b41
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rdi + 0x10]
jge 0x140038b58
mov r8, qword [rbp + 0x760]
mov rdx, qword [rbp + 0x758]
jmp 0x140038ae7
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.140231ccc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0xc98]
call fcn.140231e1c
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 0x140038bf2
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x550]
call fcn.140012dc0
jmp 0x140038c17
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 + 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 0x140038c71
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038c6c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039b45
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.1402233f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp + 0xa0]
call fcn.1402233f8
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.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 r13d, 0x30
mov word [rcx + rdi + 0x58], r13w
lea edx, [r13 - 0x2d]
lea rcx, [rbp + 0xc0]
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 + 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.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
lea edx, [r13 + 0x10]
lea rcx, [rbp + 0xe0]
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 + 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 0x140039b4b
lea rdx, [rbp + 0x998]
lea rcx, [rbp + 0x358]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x140038ed0
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038ecb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039ba3
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 0x140038f32
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038f2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039ba9
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 0x140038f92
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x848]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038f8d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039baf
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 0x140038ff2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x748]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038fed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039bb5
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 0x140039052
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x868]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003904d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039bbb
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 0x1400390e4
mov r13d, 0x30
call fcn.140020e90
cmp dword [rax + 8], 5
jl 0x140039780
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 0x1400391f2
cmp ebx, 0xa
jge 0x1400391f2
mov rax, r8
sub rax, rdx
lea rcx, [rbp + 0x788]
cmp rax, 2
jb 0x1400391c1
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 0x1400391db
mov qword [rsp + 0x20], 2
lea r9, [0x1402cda80]
mov edx, 2
call fcn.140021e20
inc ebx
cmp ebx, dword [rdi + 0x10]
jge 0x1400391f2
mov r8, qword [rbp + 0x7a0]
mov rdx, qword [rbp + 0x798]
jmp 0x140039181
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.140231ccc
mov edx, VariantTimeToDosDateTime
lea rcx, [rbp + 0xcb0]
call fcn.140231e1c
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 0x14003928c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x14], eax
xor edx, edx
lea rcx, [rbp + 0x650]
call fcn.140012dc0
jmp 0x1400392b1
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 + 0x650]
call fcn.140021890
lea rdx, [rbp + 0x9b8]
lea rcx, [rbp + 0x658]
call fcn.140019f80
mov r8, qword [rbp + 0x780]
cmp r8, 7
jbe 0x1400392e4
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.1402233f8
mov rbx, rax
mov edx, 0x2040
lea rcx, [rbp + 0xf0]
call fcn.1402233f8
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.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], r13w
mov edx, 3
lea rcx, [rbp + 0x110]
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 + 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.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 r8, dword [rcx + 4]
mov word [r8 + rbx + 0x58], 0x20
mov edx, 0x40
lea rcx, [rbp + 0x130]
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 + 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 0x140039bc1
lea rdx, [rbp + 0x9d8]
lea rcx, [rbp + 0x458]
call fcn.140019f80
nop
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 7
jbe 0x140039544
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14031c620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003953f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c19
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 0x1400395a6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x768]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400395a1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c1f
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 0x140039606
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x888]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039601
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c25
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 0x140039666
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x788]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039661
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c2b
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 0x1400396c6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x8a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400396c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c31
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 0x140039780
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 0x140039c37
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 0x1400397e6
mov rdx, qword [rbp + 0x928]
test rdx, rdx
jne 0x1400397e6
lea rcx, [rsp + 0x38]
call fcn.140002984
jmp 0x140039806
mov r8, r15
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400397f0
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.140051010
nop
lea rax, vtable.srl::GroupID.0
mov qword [rbp + 0x948], rax
mov rdx, qword [rbp + 0x968]
cmp rdx, 7
jbe 0x14003987d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x950]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039878
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c42
call fcn.140003e94
movdqa xmm0, xmmword [0x1402d4800]
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 0x1400398b8
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 0x14003990b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x928]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039905
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c48
call fcn.140003e94
nop
lea rcx, [rsp + 0x70]
call fcn.140019240
nop
mov rdx, qword [rbp + 0x800]
cmp rdx, 7
jbe 0x14003995c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x7e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039957
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c4e
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 0x1400399b7
inc rdx
mov rcx, qword [rbp + 0x7c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400399b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c54
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 0x140039a11
inc rdx
mov rcx, qword [rbp + 0x808]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039a0c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c5a
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 0x140039a6b
inc rdx
mov rcx, qword [rbp + 0x828]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039a66
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039c60
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 0x140039ac6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x8c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039ac1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039b23
call fcn.140003e94
mov qword [rbp + 0x8d8], r12
mov qword [rbp + 0x8e0], 7
mov word [rbp + 0x8c8], r12w
lea rcx, [rbp + 0x140]
call fcn.140039c70
nop
lea rcx, [rbp + 0x240]
call fcn.140039c70
mov rcx, qword [rbp + 0xcc8]
xor rcx, rsp
call fcn.140220ab0
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.14022a250
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
mov ecx, 0x80004005
call fcn.140002e3c
nop
call fcn.140220f64
nop
call fcn.14022a250
nop
lea rcx, [0x14032b0dc]
call fcn.140220de4
cmp dword [0x14032b0dc], 0xffffffff
jne 0x140038e76
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 0x140038e76
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 0x1400394ea
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 0x1400394ea
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
nop
call fcn.14022a250
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
int3