Function at 0x43b2c0
Capabilities:
Check for time delay via gettickcount
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5edbc1
mov eax, dword fs:[0]
push eax
sub esp, 0xc74
mov eax, dword [0x677010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x584]
call fcn.00407a4a
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x584]
push str.srl::Monitor::GetMonitorInfoW
mov byte [ebp - 0x588], 0
call fcn.00414ef0
mov dword [ebp - 4], 1
call fcn.0041db40
cmp dword [eax + 4], 4
jl 0x43b334
push ecx
lea ecx, [ebp - 0x588]
call fcn.00412cf0
lea eax, [ebp - 0x5b4]
push eax
push 0x20019
push 0
push str.SYSTEMCurrentControlSetEnumDISPLAY
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x43cff0
xor ecx, ecx
mov byte [ebp - 0x5a9], 1
mov dword [ebp - 0x5c8], ecx
mov dword [ebp - 0x5b0], 0x100
mov dword [ebp - 0x5c0], ecx
nop dword [eax]
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x5b0]
push eax
lea eax, [ebp - 0x228]
push eax
push ecx
push dword [ebp - 0x5b4]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, eax
test edi, edi
jne 0x43cf5b
call fcn.0041db40
cmp dword [eax + 4], 3
jl 0x43b97a
call fcn.0041db40
sub esp, 8
lea ecx, [ebp - 0x9c0]
mov esi, eax
mov dword [ebp - 0x5a4], esi
call fcn.00415be0
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 2
call fcn.00407a4a
push str.TRACE
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 3
call fcn.00414ef0
lea ecx, [ebp - 0x3bc]
call fcn.00407a4a
xor eax, eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x5a8], eax
cmp dword [esi + 0xc], eax
jle 0x43b4af
nop word [eax + eax]
cmp eax, 0xa
jge 0x43b4af
mov edx, dword [ebp - 0x3a8]
mov eax, edx
mov ecx, dword [ebp - 0x3ac]
sub eax, ecx
cmp eax, 2
jb 0x43b478
cmp edx, 8
lea esi, [ebp - 0x3bc]
push 4
cmovae esi, dword [ebp - 0x3bc]
lea edi, [ecx + 2]
push 0x63e4c4
mov dword [ebp - 0x3ac], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005bfc60
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
mov esi, dword [ebp - 0x5a4]
jmp 0x43b499
push 2
push 0x63e4c4
mov byte [ebp - 0x5e0], 0
lea ecx, [ebp - 0x3bc]
push dword [ebp - 0x5e0]
push 2
call fcn.0041ea00
mov eax, dword [ebp - 0x5a8]
inc eax
mov dword [ebp - 0x5a8], eax
cmp eax, dword [esi + 0xc]
jl 0x43b420
lea ecx, [ebp - 0x554]
call fcn.00407a4a
lea ecx, [ebp - 0x38c]
mov byte [ebp - 4], 5
call fcn.00407a4a
mov byte [ebp - 4], 6
call fcn.005c8926
lea eax, [ebp - 0x28]
push 0xb
push eax
call fcn.005c8a22
add esp, 8
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x554]
push eax
call fcn.00414ef0
sub esp, 8
lea ecx, [ebp - 0xa70]
call fcn.00415be0
mov byte [ebp - 4], 7
cmp dword [esi + 0x10], 0
jne 0x43b51f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0
lea ecx, [ebp - 0xa60]
mov dword [esi + 0x10], eax
call fcn.004101b0
jmp 0x43b54f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi + 0x10]
lea ecx, [ebp - 0xa60]
movd xmm0, eax
cvtdq2pd xmm1, xmm0
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x644390]
divsd xmm1, qword [0x644330]
call fcn.0041e250
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp - 0xa58]
call fcn.00416830
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x378]
cmp eax, 8
jb 0x43b5b8
mov ecx, dword [ebp - 0x38c]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43b5af
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x404]
xor eax, eax
mov dword [ebp - 0x37c], 0
mov word [ebp - 0x38c], ax
lea ecx, [ebp - 0x404]
movups xmmword [ebp - 0x38c], xmm0
mov dword [ebp - 0x378], 7
movq xmm0, qword [ebp - 0x3f4]
movq qword [ebp - 0x37c], xmm0
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 0x3f0], 7
mov word [ebp - 0x404], ax
mov byte [ebp - 4], 7
call fcn.004075ab
lea ecx, [ebp - 0xa70]
mov byte [ebp - 4], 6
call fcn.00415840
cmp dword [ebp - 0x3a8], 8
lea eax, [ebp - 0x3bc]
push 0x2040
cmovae eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x5a4], eax
lea eax, [ebp - 0x640]
push eax
call fcn.005be8d1
mov ecx, dword [ebp - 0x9b0]
lea edx, [ebp - 0x9b0]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x544]
mov byte [ebp - 4], 9
lea edx, [ebp - 0x554]
cmp dword [ebp - 0x540], 8
lea ecx, [ebp - 0x9b0]
push eax
cmovae edx, dword [ebp - 0x554]
mov byte [ebp - 4], 6
call fcn.004137f0
mov esi, eax
lea eax, [ebp - 0x638]
push 0x10
push eax
call fcn.005be8d1
add esp, 0x1c
mov edx, 0x63e114
mov ecx, esi
mov edi, eax
call fcn.00413320
mov esi, eax
test esi, esi
jne 0x43b6c5
xor ecx, ecx
jmp 0x43b6cc
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x650]
push 6
push eax
call fcn.005be8ff
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x6f0]
push eax
call fcn.005be8e5
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov ecx, dword [ebp - 0x37c]
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0x38c]
cmp dword [ebp - 0x378], 8
push ecx
cmovae edx, dword [ebp - 0x38c]
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.004137f0
push 0
mov edi, eax
lea eax, [ebp - 0x6e0]
push 5
push eax
call fcn.005be8ff
mov edx, 0x63e114
mov ecx, edi
mov esi, eax
call fcn.00413320
mov edx, esi
mov ecx, eax
call fcn.0041e9d0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x630]
push eax
call fcn.005be8d1
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x52c]
add esp, 0x40
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x53c]
cmp dword [ebp - 0x528], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x53c]
mov byte [ebp - 4], 6
call fcn.004137f0
add esp, 4
mov edx, 0x63e504
mov ecx, eax
call fcn.00413320
mov edx, dword [ebp - 0x5a4]
mov ecx, eax
call fcn.00413320
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x6835d0]
cmp eax, dword [ecx + 4]
jle 0x43b82d
push 0x6835d0
call fcn.005bcd79
add esp, 4
cmp dword [0x6835d0], 0xffffffff
jne 0x43b82d
mov ecx, 0x6835d4
call fcn.00407a4a
push 0x5ff870
call fcn.005bc9d9
push 0x6835d0
call fcn.005bcd3a
add esp, 8
lea eax, [ebp - 0x56c]
push eax
lea ecx, [ebp - 0x9a8]
call fcn.00416830
mov byte [ebp - 4], 0xc
mov eax, dword [0x6835e8]
cmp eax, 8
jb 0x43b895
mov ecx, dword [0x6835d4]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43b88c
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x56c]
xor eax, eax
lea ecx, [ebp - 0x56c]
mov word [ebp - 0x56c], ax
movups xmmword [0x6835d4], xmm0
movq xmm0, qword [ebp - 0x55c]
movq qword [0x6835e4], xmm0
mov dword [ebp - 0x55c], 0
mov dword [ebp - 0x558], 7
mov byte [ebp - 4], 6
call fcn.004075ab
lea ecx, [ebp - 0x38c]
mov byte [ebp - 4], 5
call fcn.004075ab
lea ecx, [ebp - 0x554]
mov byte [ebp - 4], 4
call fcn.004075ab
lea ecx, [ebp - 0x3bc]
mov byte [ebp - 4], 3
call fcn.004075ab
lea ecx, [ebp - 0x53c]
mov byte [ebp - 4], 2
call fcn.004075ab
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], 1
call fcn.00415840
call fcn.0041db40
mov ecx, dword [0x6835e4]
mov byte [ebp - 4], 0xd
mov edx, 0x6835d4
cmp dword [0x6835e8], 8
push ecx
cmovae edx, dword [0x6835d4]
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.004137f0
mov edx, str.Display_Key_Name:
mov ecx, eax
call fcn.00411d70
lea edx, [ebp - 0x228]
mov ecx, eax
call fcn.00413320
push eax
call fcn.00414850
add esp, 8
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.004075e1
lea eax, [ebp - 0x5b8]
mov byte [ebp - 4], 0xe
push eax
push 0x20019
push 0
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x5b4]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov edi, eax
call fcn.0041db40
test edi, edi
jne 0x43ceec
cmp dword [eax + 4], 3
jl 0x43bf8a
call fcn.0041db40
sub esp, 8
lea ecx, [ebp - 0x910]
mov esi, eax
mov dword [ebp - 0x5a4], esi
call fcn.00415be0
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0xf
call fcn.00407a4a
push str.TRACE
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0x10
call fcn.00414ef0
lea ecx, [ebp - 0x3d4]
call fcn.00407a4a
xor eax, eax
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x5a8], eax
cmp dword [esi + 0xc], eax
jle 0x43babf
nop dword [eax + eax]
cmp eax, 0xa
jge 0x43babf
mov edx, dword [ebp - 0x3c0]
mov eax, edx
mov ecx, dword [ebp - 0x3c4]
sub eax, ecx
cmp eax, 2
jb 0x43ba88
cmp edx, 8
lea esi, [ebp - 0x3d4]
push 4
cmovae esi, dword [ebp - 0x3d4]
lea edi, [ecx + 2]
push 0x63e4c4
mov dword [ebp - 0x3c4], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005bfc60
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
mov esi, dword [ebp - 0x5a4]
jmp 0x43baa9
push 2
push 0x63e4c4
mov byte [ebp - 0x5dc], 0
lea ecx, [ebp - 0x3d4]
push dword [ebp - 0x5dc]
push 2
call fcn.0041ea00
mov eax, dword [ebp - 0x5a8]
inc eax
mov dword [ebp - 0x5a8], eax
cmp eax, dword [esi + 0xc]
jl 0x43ba30
lea ecx, [ebp - 0x4f4]
call fcn.00407a4a
lea ecx, [ebp - 0x344]
mov byte [ebp - 4], 0x12
call fcn.00407a4a
mov byte [ebp - 4], 0x13
call fcn.005c8926
lea eax, [ebp - 0x28]
push 0xb
push eax
call fcn.005c8a22
add esp, 8
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x4f4]
push eax
call fcn.00414ef0
sub esp, 8
lea ecx, [ebp - 0xb20]
call fcn.00415be0
mov byte [ebp - 4], 0x14
cmp dword [esi + 0x10], 0
jne 0x43bb2f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0
lea ecx, [ebp - 0xb10]
mov dword [esi + 0x10], eax
call fcn.004101b0
jmp 0x43bb5f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi + 0x10]
lea ecx, [ebp - 0xb10]
movd xmm0, eax
cvtdq2pd xmm1, xmm0
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x644390]
divsd xmm1, qword [0x644330]
call fcn.0041e250
lea eax, [ebp - 0x524]
push eax
lea ecx, [ebp - 0xb08]
call fcn.00416830
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x330]
cmp eax, 8
jb 0x43bbc8
mov ecx, dword [ebp - 0x344]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43bbbf
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x524]
xor eax, eax
mov dword [ebp - 0x334], 0
mov word [ebp - 0x344], ax
lea ecx, [ebp - 0x524]
movups xmmword [ebp - 0x344], xmm0
mov dword [ebp - 0x330], 7
movq xmm0, qword [ebp - 0x514]
movq qword [ebp - 0x334], xmm0
mov dword [ebp - 0x514], eax
mov dword [ebp - 0x510], 7
mov word [ebp - 0x524], ax
mov byte [ebp - 4], 0x14
call fcn.004075ab
lea ecx, [ebp - 0xb20]
mov byte [ebp - 4], 0x13
call fcn.00415840
cmp dword [ebp - 0x3c0], 8
lea eax, [ebp - 0x3d4]
push 0x2040
cmovae eax, dword [ebp - 0x3d4]
mov dword [ebp - 0x5a4], eax
lea eax, [ebp - 0x5e8]
push eax
call fcn.005be8d1
mov ecx, dword [ebp - 0x900]
lea edx, [ebp - 0x900]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x4e4]
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x4f4]
cmp dword [ebp - 0x4e0], 8
lea ecx, [ebp - 0x900]
push eax
cmovae edx, dword [ebp - 0x4f4]
mov byte [ebp - 4], 0x13
call fcn.004137f0
mov esi, eax
lea eax, [ebp - 0x5f0]
push 0x10
push eax
call fcn.005be8d1
add esp, 0x1c
mov edx, 0x63e114
mov ecx, esi
mov edi, eax
call fcn.00413320
mov esi, eax
test esi, esi
jne 0x43bcd5
xor ecx, ecx
jmp 0x43bcdc
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x6c0]
push 6
push eax
call fcn.005be8ff
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x6b0]
push eax
call fcn.005be8e5
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov ecx, dword [ebp - 0x334]
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x344]
cmp dword [ebp - 0x330], 8
push ecx
cmovae edx, dword [ebp - 0x344]
mov ecx, eax
mov byte [ebp - 4], 0x13
call fcn.004137f0
push 0
mov edi, eax
lea eax, [ebp - 0x6a0]
push 5
push eax
call fcn.005be8ff
mov edx, 0x63e114
mov ecx, edi
mov esi, eax
call fcn.00413320
mov edx, esi
mov ecx, eax
call fcn.0041e9d0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x628]
push eax
call fcn.005be8d1
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x4cc]
add esp, 0x40
mov byte [ebp - 4], 0x18
lea edx, [ebp - 0x4dc]
cmp dword [ebp - 0x4c8], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x4dc]
mov byte [ebp - 4], 0x13
call fcn.004137f0
add esp, 4
mov edx, 0x63e504
mov ecx, eax
call fcn.00413320
mov edx, dword [ebp - 0x5a4]
mov ecx, eax
call fcn.00413320
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x6835d0]
cmp eax, dword [ecx + 4]
jle 0x43be3d
push 0x6835d0
call fcn.005bcd79
add esp, 4
cmp dword [0x6835d0], 0xffffffff
jne 0x43be3d
mov ecx, 0x6835d4
call fcn.00407a4a
push 0x5ff870
call fcn.005bc9d9
push 0x6835d0
call fcn.005bcd3a
add esp, 8
lea eax, [ebp - 0x50c]
push eax
lea ecx, [ebp - 0x8f8]
call fcn.00416830
mov byte [ebp - 4], 0x19
mov eax, dword [0x6835e8]
cmp eax, 8
jb 0x43bea5
mov ecx, dword [0x6835d4]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43be9c
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x50c]
xor eax, eax
lea ecx, [ebp - 0x50c]
mov word [ebp - 0x50c], ax
movups xmmword [0x6835d4], xmm0
movq xmm0, qword [ebp - 0x4fc]
movq qword [0x6835e4], xmm0
mov dword [ebp - 0x4fc], 0
mov dword [ebp - 0x4f8], 7
mov byte [ebp - 4], 0x13
call fcn.004075ab
lea ecx, [ebp - 0x344]
mov byte [ebp - 4], 0x12
call fcn.004075ab
lea ecx, [ebp - 0x4f4]
mov byte [ebp - 4], 0x11
call fcn.004075ab
lea ecx, [ebp - 0x3d4]
mov byte [ebp - 4], 0x10
call fcn.004075ab
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0xf
call fcn.004075ab
lea ecx, [ebp - 0x910]
mov byte [ebp - 4], 0xe
call fcn.00415840
call fcn.0041db40
mov ecx, dword [0x6835e4]
mov byte [ebp - 4], 0x1a
mov edx, 0x6835d4
cmp dword [0x6835e8], 8
push ecx
cmovae edx, dword [0x6835d4]
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.004137f0
mov edx, str.Opened_Monitor_Key:
mov ecx, eax
call fcn.00411d70
lea edx, [ebp - 0x228]
mov ecx, eax
call fcn.00413320
push eax
call fcn.00414850
add esp, 8
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x5b0]
mov dword [ebp - 0x5b0], 0x200
push eax
lea eax, [ebp - 0x228]
push eax
push 0
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, eax
call fcn.0041db40
test edi, edi
jne 0x43ce6e
cmp dword [eax + 4], 3
jl 0x43c58a
call fcn.0041db40
sub esp, 8
lea ecx, [ebp - 0x7b0]
mov esi, eax
mov dword [ebp - 0x5a4], esi
call fcn.00415be0
lea ecx, [ebp - 0x494]
mov byte [ebp - 4], 0x1b
call fcn.00407a4a
push str.TRACE
lea ecx, [ebp - 0x494]
mov byte [ebp - 4], 0x1c
call fcn.00414ef0
lea ecx, [ebp - 0x3a4]
call fcn.00407a4a
xor eax, eax
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x5a8], eax
cmp dword [esi + 0xc], eax
jle 0x43c0bf
nop
cmp eax, 0xa
jge 0x43c0bf
mov edx, dword [ebp - 0x390]
mov eax, edx
mov ecx, dword [ebp - 0x394]
sub eax, ecx
cmp eax, 2
jb 0x43c088
cmp edx, 8
lea esi, [ebp - 0x3a4]
push 4
cmovae esi, dword [ebp - 0x3a4]
lea edi, [ecx + 2]
push 0x63e4c4
mov dword [ebp - 0x394], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005bfc60
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
mov esi, dword [ebp - 0x5a4]
jmp 0x43c0a9
push 2
push 0x63e4c4
mov byte [ebp - 0x5d8], 0
lea ecx, [ebp - 0x3a4]
push dword [ebp - 0x5d8]
push 2
call fcn.0041ea00
mov eax, dword [ebp - 0x5a8]
inc eax
mov dword [ebp - 0x5a8], eax
cmp eax, dword [esi + 0xc]
jl 0x43c030
lea ecx, [ebp - 0x4ac]
call fcn.00407a4a
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x1e
call fcn.00407a4a
mov byte [ebp - 4], 0x1f
call fcn.005c8926
lea eax, [ebp - 0x28]
push 0xb
push eax
call fcn.005c8a22
add esp, 8
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x4ac]
push eax
call fcn.00414ef0
sub esp, 8
lea ecx, [ebp - 0xbd0]
call fcn.00415be0
mov byte [ebp - 4], 0x20
cmp dword [esi + 0x10], 0
jne 0x43c12f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0
lea ecx, [ebp - 0xbc0]
mov dword [esi + 0x10], eax
call fcn.004101b0
jmp 0x43c15f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi + 0x10]
lea ecx, [ebp - 0xbc0]
movd xmm0, eax
cvtdq2pd xmm1, xmm0
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x644390]
divsd xmm1, qword [0x644330]
call fcn.0041e250
lea eax, [ebp - 0x4c4]
push eax
lea ecx, [ebp - 0xbb8]
call fcn.00416830
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x348]
cmp eax, 8
jb 0x43c1c8
mov ecx, dword [ebp - 0x35c]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43c1bf
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x4c4]
xor eax, eax
mov dword [ebp - 0x34c], 0
mov word [ebp - 0x35c], ax
lea ecx, [ebp - 0x4c4]
movups xmmword [ebp - 0x35c], xmm0
mov dword [ebp - 0x348], 7
movq xmm0, qword [ebp - 0x4b4]
movq qword [ebp - 0x34c], xmm0
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x4b0], 7
mov word [ebp - 0x4c4], ax
mov byte [ebp - 4], 0x20
call fcn.004075ab
lea ecx, [ebp - 0xbd0]
mov byte [ebp - 4], 0x1f
call fcn.00415840
cmp dword [ebp - 0x390], 8
lea eax, [ebp - 0x3a4]
push 0x2040
cmovae eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x5a4], eax
lea eax, [ebp - 0x620]
push eax
call fcn.005be8d1
mov ecx, dword [ebp - 0x7a0]
lea edx, [ebp - 0x7a0]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x49c]
mov byte [ebp - 4], 0x22
lea edx, [ebp - 0x4ac]
cmp dword [ebp - 0x498], 8
lea ecx, [ebp - 0x7a0]
push eax
cmovae edx, dword [ebp - 0x4ac]
mov byte [ebp - 4], 0x1f
call fcn.004137f0
mov esi, eax
lea eax, [ebp - 0x618]
push 0x10
push eax
call fcn.005be8d1
add esp, 0x1c
mov edx, 0x63e114
mov ecx, esi
mov edi, eax
call fcn.00413320
mov esi, eax
test esi, esi
jne 0x43c2d5
xor ecx, ecx
jmp 0x43c2dc
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x690]
push 6
push eax
call fcn.005be8ff
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x680]
push eax
call fcn.005be8e5
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov ecx, dword [ebp - 0x34c]
mov byte [ebp - 4], 0x23
lea edx, [ebp - 0x35c]
cmp dword [ebp - 0x348], 8
push ecx
cmovae edx, dword [ebp - 0x35c]
mov ecx, eax
mov byte [ebp - 4], 0x1f
call fcn.004137f0
push 0
mov edi, eax
lea eax, [ebp - 0x670]
push 5
push eax
call fcn.005be8ff
mov edx, 0x63e114
mov ecx, edi
mov esi, eax
call fcn.00413320
mov edx, esi
mov ecx, eax
call fcn.0041e9d0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x610]
push eax
call fcn.005be8d1
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x484]
add esp, 0x40
mov byte [ebp - 4], 0x24
lea edx, [ebp - 0x494]
cmp dword [ebp - 0x480], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x494]
mov byte [ebp - 4], 0x1f
call fcn.004137f0
add esp, 4
mov edx, 0x63e504
mov ecx, eax
call fcn.00413320
mov edx, dword [ebp - 0x5a4]
mov ecx, eax
call fcn.00413320
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x6835d0]
cmp eax, dword [ecx + 4]
jle 0x43c43d
push 0x6835d0
call fcn.005bcd79
add esp, 4
cmp dword [0x6835d0], 0xffffffff
jne 0x43c43d
mov ecx, 0x6835d4
call fcn.00407a4a
push 0x5ff870
call fcn.005bc9d9
push 0x6835d0
call fcn.005bcd3a
add esp, 8
lea eax, [ebp - 0x41c]
push eax
lea ecx, [ebp - 0x798]
call fcn.00416830
mov byte [ebp - 4], 0x25
mov eax, dword [0x6835e8]
cmp eax, 8
jb 0x43c4a5
mov ecx, dword [0x6835d4]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43c49c
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x41c]
xor eax, eax
lea ecx, [ebp - 0x41c]
mov word [ebp - 0x41c], ax
movups xmmword [0x6835d4], xmm0
movq xmm0, qword [ebp - 0x40c]
movq qword [0x6835e4], xmm0
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x408], 7
mov byte [ebp - 4], 0x1f
call fcn.004075ab
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x1e
call fcn.004075ab
lea ecx, [ebp - 0x4ac]
mov byte [ebp - 4], 0x1d
call fcn.004075ab
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 4], 0x1c
call fcn.004075ab
lea ecx, [ebp - 0x494]
mov byte [ebp - 4], 0x1b
call fcn.004075ab
lea ecx, [ebp - 0x7b0]
mov byte [ebp - 4], 0xe
call fcn.00415840
call fcn.0041db40
mov ecx, dword [0x6835e4]
mov byte [ebp - 4], 0x26
mov edx, 0x6835d4
cmp dword [0x6835e8], 8
push ecx
cmovae edx, dword [0x6835d4]
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.004137f0
mov edx, str.Opened_First_Key:
mov ecx, eax
call fcn.00411d70
lea edx, [ebp - 0x228]
mov ecx, eax
call fcn.00413320
push eax
call fcn.00414850
add esp, 8
lea eax, [ebp - 0x5bc]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, eax
call fcn.0041db40
test esi, esi
jne 0x43ce47
cmp dword [eax + 4], 3
jl 0x43cb29
call fcn.0041db40
sub esp, 8
lea ecx, [ebp - 0x860]
mov esi, eax
mov dword [ebp - 0x5a4], esi
call fcn.00415be0
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0x27
call fcn.00407a4a
push str.TRACE
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0x28
call fcn.00414ef0
lea ecx, [ebp - 0x3ec]
call fcn.00407a4a
xor eax, eax
mov byte [ebp - 4], 0x29
mov dword [ebp - 0x5a8], eax
cmp dword [esi + 0xc], eax
jle 0x43c6b1
cmp eax, 0xa
jge 0x43c6b1
mov edx, dword [ebp - 0x3d8]
mov eax, edx
mov ecx, dword [ebp - 0x3dc]
sub eax, ecx
cmp eax, 2
jb 0x43c67a
cmp edx, 8
lea esi, [ebp - 0x3ec]
push 4
cmovae esi, dword [ebp - 0x3ec]
lea edi, [ecx + 2]
push 0x63e4c4
mov dword [ebp - 0x3dc], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005bfc60
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
mov esi, dword [ebp - 0x5a4]
jmp 0x43c69b
push 2
push 0x63e4c4
mov byte [ebp - 0x5d4], 0
lea ecx, [ebp - 0x3ec]
push dword [ebp - 0x5d4]
push 2
call fcn.0041ea00
mov eax, dword [ebp - 0x5a8]
inc eax
mov dword [ebp - 0x5a8], eax
cmp eax, dword [esi + 0xc]
jl 0x43c622
lea ecx, [ebp - 0x44c]
call fcn.00407a4a
lea ecx, [ebp - 0x374]
mov byte [ebp - 4], 0x2a
call fcn.00407a4a
mov byte [ebp - 4], 0x2b
call fcn.005c8926
lea eax, [ebp - 0x28]
push 0xb
push eax
call fcn.005c8a22
add esp, 8
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x44c]
push eax
call fcn.00414ef0
sub esp, 8
lea ecx, [ebp - 0xc80]
call fcn.00415be0
mov byte [ebp - 4], 0x2c
cmp dword [esi + 0x10], 0
jne 0x43c721
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0
lea ecx, [ebp - 0xc70]
mov dword [esi + 0x10], eax
call fcn.004101b0
jmp 0x43c751
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi + 0x10]
lea ecx, [ebp - 0xc70]
movd xmm0, eax
cvtdq2pd xmm1, xmm0
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x644390]
divsd xmm1, qword [0x644330]
call fcn.0041e250
lea eax, [ebp - 0x47c]
push eax
lea ecx, [ebp - 0xc68]
call fcn.00416830
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0x360]
cmp eax, 8
jb 0x43c7ba
mov ecx, dword [ebp - 0x374]
inc eax
cmp eax, 0x7fffffff
ja 0x43cfeb
add eax, eax
cmp eax, 0x1000
jb 0x43c7b1
test cl, 0x1f
jne 0x43cfeb
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43cfeb
sub ecx, eax
sub ecx, 4
cmp ecx, 0x1f
ja 0x43cfeb
mov ecx, eax
push ecx
call fcn.00476ee1
add esp, 4
movups xmm0, xmmword [ebp - 0x47c]
xor eax, eax
mov dword [ebp - 0x364], 0
mov word [ebp - 0x374], ax
lea ecx, [ebp - 0x47c]
movups xmmword [ebp - 0x374], xmm0
mov dword [ebp - 0x360], 7
movq xmm0, qword [ebp - 0x46c]
movq qword [ebp - 0x364], xmm0
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], 7
mov word [ebp - 0x47c], ax
mov byte [ebp - 4], 0x2c
call fcn.004075ab
lea ecx, [ebp - 0xc80]
mov byte [ebp - 4], 0x2b
call fcn.00415840
cmp dword [ebp - 0x3d8], 8
lea eax, [ebp - 0x3ec]
push 0x2040
cmovae eax, dword [ebp - 0x3ec]
mov dword [ebp - 0x5a4], eax
lea eax, [ebp - 0x608]
push eax
call fcn.005be8d1
mov ecx, dword [ebp - 0x850]
lea edx, [ebp - 0x850]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x43c]
mov byte [ebp - 4], 0x2e
lea edx, [ebp - 0x44c]
cmp dword [ebp - 0x438], 8
lea ecx, [ebp - 0x850]
push eax
cmovae edx, dword [ebp - 0x44c]
mov byte [ebp - 4], 0x2b
call fcn.004137f0
mov esi, eax
lea eax, [ebp - 0x600]
push 0x10
push eax
call fcn.005be8d1
add esp, 0x1c
mov edx, 0x63e114
mov ecx, esi
mov edi, eax
call fcn.00413320
mov esi, eax
test esi, esi
jne 0x43c8c7
xor ecx, ecx
jmp 0x43c8ce
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x660]
push 6
push eax
call fcn.005be8ff
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x6d0]
push eax
call fcn.005be8e5
mov edx, eax
mov ecx, esi
call fcn.0041e9d0
mov ecx, dword [ebp - 0x364]
mov byte [ebp - 4], 0x2f
lea edx, [ebp - 0x374]
cmp dword [ebp - 0x360], 8
push ecx
cmovae edx, dword [ebp - 0x374]
mov ecx, eax
mov byte [ebp - 4], 0x2b
call fcn.004137f0
push 0
mov edi, eax
lea eax, [ebp - 0x700]
push 5
push eax
call fcn.005be8ff
mov edx, 0x63e114
mov ecx, edi
mov esi, eax
call fcn.00413320
mov edx, esi
mov ecx, eax
call fcn.0041e9d0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x5f8]
push eax
call fcn.005be8d1
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x424]
add esp, 0x40
mov byte [ebp - 4], 0x30
lea edx, [ebp - 0x434]
cmp dword [ebp - 0x420], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x434]
mov byte [ebp - 4], 0x2b
call fcn.004137f0
add esp, 4
mov edx, 0x63e504
mov ecx, eax
call fcn.00413320
mov edx, dword [ebp - 0x5a4]
mov ecx, eax
call fcn.00413320
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x6835d0]
cmp eax, dword [ecx + 4]
jle 0x43ca2f
push 0x6835d0
call fcn.005bcd79
add esp, 4
cmp dword [0x6835d0], 0xffffffff
jne 0x43ca2f
mov ecx, 0x6835d4
call fcn.00407a4a
push 0x5ff870
call fcn.005bc9d9
push 0x6835d0
call fcn.005bcd3a
add esp, 8
lea eax, [ebp - 0x464]
push eax
lea ecx, [ebp - 0x848]
call fcn.00416830
mov byte [ebp - 4], 0x31
mov eax, dword [0x6835e8]
cmp eax, 8
jb 0x43ca61
inc eax
push 2
push eax
push dword [0x6835d4]
call fcn.0040626d
add esp, 0xc
movups xmm0, xmmword [ebp - 0x464]
xor eax, eax
lea ecx, [ebp - 0x464]
mov word [ebp - 0x464], ax
movups xmmword [0x6835d4], xmm0
movq xmm0, qword [ebp - 0x454]
movq qword [0x6835e4], xmm0
mov dword [ebp - 0x454], 0
mov dword [ebp - 0x450], 7
mov byte [ebp - 4], 0x2b
call fcn.004075ab
lea ecx, [ebp - 0x374]
mov byte [ebp - 4], 0x2a
call fcn.004075ab
lea ecx, [ebp - 0x44c]
mov byte [ebp - 4], 0x29
call fcn.004075ab
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 4], 0x28
call fcn.004075ab
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0x27
call fcn.004075ab
lea ecx, [ebp - 0x860]
mov byte [ebp - 4], 0xe
call fcn.00415840
call fcn.0041db40
mov edx, 0x6835d4
mov ecx, eax
call fcn.00413a60
mov edx, str.Read_First_Key:
mov ecx, eax
call fcn.00411d70
lea edx, [ebp - 0x228]
mov ecx, eax
call fcn.00413320
push eax
call fcn.00414850
add esp, 4
lea eax, [ebp - 0x5d0]
push eax
push 0x20019
push 0
push str.Control
push dword [ebp - 0x5bc]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, eax
call fcn.0041db40
test esi, esi
jne 0x43cdd2
cmp dword [eax + 4], 3
jl 0x43cb90
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Control_key:
mov ecx, eax
call fcn.00411d70
push eax
call fcn.00414850
add esp, 4
push dword [ebp - 0x5d0]
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call edi
lea eax, [ebp - 0x5c4]
push eax
push 0x20019
push 0
push str.Device_Parameters
push dword [ebp - 0x5bc]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x43cd59
call fcn.0041db40
cmp dword [eax + 4], 3
jl 0x43cc03
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Device_Params
mov ecx, eax
call fcn.00411d70
push eax
call fcn.00414850
add esp, 4
lea eax, [ebp - 0x5cc]
mov dword [ebp - 0x5cc], 0x101
push eax
lea eax, [ebp - 0x32c]
push eax
push 0
push 0
push str.EDID
push dword [ebp - 0x5c4]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
call fcn.0041db40
test esi, esi
jne 0x43cce2
cmp dword [eax + 4], 3
jl 0x43cc85
push dword [ebp - 0x5c0]
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Checked_EDID_for_monitor:
mov ecx, eax
call fcn.00411d70
mov ecx, eax
call fcn.00415d70
push eax
call fcn.00414850
add esp, 4
mov esi, dword [ebp - 0x5c0]
lea eax, [ebp - 0x5a0]
push eax
push esi
push dword [ebp - 0x5cc]
lea eax, [ebp - 0x32c]
push eax
call fcn.004393c0
push dword [ebp - 0x5c4]
inc esi
mov dword [ebp - 0x5c0], esi
call edi
push dword [ebp - 0x5bc]
call edi
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
cmp dword [eax + 4], 3
jl 0x43cd23
push esi
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Error:
mov ecx, eax
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
push dword [ebp - 0x5c4]
call edi
push dword [ebp - 0x5bc]
call edi
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
call fcn.0041db40
cmp dword [eax + 4], 3
jl 0x43ce19
push 0
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Error:
mov ecx, eax
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
push dword [ebp - 0x5bc]
call edi
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
cmp dword [eax + 4], 3
jl 0x43ce13
push esi
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
mov edx, str.Error:
mov ecx, eax
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push dword [ebp - 0x5bc]
call edi
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
cmp dword [eax + 4], 3
jl 0x43cec6
push esi
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov edx, esi
mov ecx, eax
call fcn.00413a60
jmp 0x43ceaa
cmp dword [eax + 4], 3
jl 0x43cec6
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov ecx, dword [esi + 0x10]
mov byte [ebp - 4], 0x32
cmp dword [esi + 0x14], 8
jb 0x43ce98
mov esi, dword [esi]
push ecx
mov edx, esi
mov byte [ebp - 4], 0xe
mov ecx, eax
call fcn.004137f0
add esp, 4
push edi
mov edx, str.Error:
mov ecx, eax
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
push dword [ebp - 0x5b8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
cmp dword [eax + 4], 3
jl 0x43cf44
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov ecx, dword [esi + 0x10]
mov byte [ebp - 4], 0x33
cmp dword [esi + 0x14], 8
jb 0x43cf16
mov esi, dword [esi]
push ecx
mov edx, esi
mov byte [ebp - 4], 0xe
mov ecx, eax
call fcn.004137f0
add esp, 4
mov edx, str.Error:
mov ecx, eax
push edi
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 1
call fcn.004075ab
mov al, byte [ebp - 0x5a9]
jmp 0x43cfc8
cmp edi, 0x103
je 0x43cfdd
call fcn.0041db40
cmp dword [eax + 4], 3
jl 0x43cfc0
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov ecx, dword [esi + 0x10]
mov byte [ebp - 4], 0x34
cmp dword [esi + 0x14], 8
jb 0x43cf92
mov esi, dword [esi]
push ecx
mov edx, esi
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.004137f0
add esp, 4
mov edx, str.Error:
mov ecx, eax
push edi
call fcn.00411d70
mov ecx, eax
call fcn.0043d080
push eax
call fcn.00414850
add esp, 4
xor al, al
mov byte [ebp - 0x5a9], al
mov ecx, dword [ebp - 0x5c8]
inc ecx
mov dword [ebp - 0x5c8], ecx
test al, al
jne 0x43b380
push dword [ebp - 0x5b4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x43d042
call fcn.005c3f14
call fcn.0041db40
cmp dword [eax + 4], 3
jl 0x43d042
push 3
call fcn.0041db40
mov ecx, eax
call fcn.0041dca0
mov esi, eax
call fcn.0041db40
mov ecx, dword [esi + 0x10]
mov byte [ebp - 4], 0x35
cmp dword [esi + 0x14], 8
jb 0x43d01f
mov esi, dword [esi]
push ecx
mov edx, esi
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.004137f0
mov edx, str.Error:
mov ecx, eax
call fcn.00411d70
push eax
call fcn.00414850
add esp, 8
lea ecx, [ebp - 0x588]
mov dword [ebp - 4], 0xffffffff
call fcn.00414900
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005bc745
mov esp, ebp
pop ebp
ret