Function at 0x50d130
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xffffffffffffffff
push 0x659098
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x758898]
xor eax, esp
mov dword [esp + 0x58], eax
push ebp
push esi
push edi
mov eax, dword [0x758898]
xor eax, esp
push eax
lea eax, [esp + 0x6c]
mov dword fs:[0], eax
mov esi, ecx
call fcn.005f6b34
push 0x6ca
mov ecx, esi
mov dword [esi + 0x138], esi
mov dword [esi + 0x13c], 0x6ca
call fcn.005f5a75
mov eax, dword [eax + 0x20]
mov dword [esi + 0x134], eax
push 0x6cb
mov ecx, esi
mov dword [esi + 0x148], esi
mov dword [esi + 0x14c], 0x6cb
call fcn.005f5a75
mov ecx, dword [eax + 0x20]
mov dword [esi + 0x144], ecx
push 0x657
mov ecx, esi
mov dword [esi + 0x158], esi
mov dword [esi + 0x15c], 0x657
call fcn.005f5a75
mov edx, dword [eax + 0x20]
mov dword [esi + 0x154], edx
push 0x64f
mov ecx, esi
mov dword [esi + 0x168], esi
mov dword [esi + 0x16c], 0x64f
call fcn.005f5a75
mov eax, dword [eax + 0x20]
mov dword [esi + 0x164], eax
push 0x5f9
mov ecx, esi
mov dword [esi + 0x178], esi
mov dword [esi + 0x17c], 0x5f9
call fcn.005f5a75
mov ecx, dword [eax + 0x20]
mov dword [esi + 0x174], ecx
push 0x423
mov ecx, esi
mov dword [esi + 0x188], esi
mov dword [esi + 0x18c], 0x423
call fcn.005f5a75
mov edx, dword [eax + 0x20]
mov dword [esi + 0x184], edx
push 0x4d4
mov ecx, esi
mov dword [esi + 0x198], esi
mov dword [esi + 0x19c], 0x4d4
call fcn.005f5a75
mov eax, dword [eax + 0x20]
push 0
push 0x64f
push esi
lea ecx, [esi + 0xdc]
lea ebp, [esi + 0x1a0]
push ecx
mov ecx, ebp
mov dword [esi + 0x194], eax
call fcn.00425ee0
cmp dword [esi + 0x1b8], 0
je 0x50d2aa
lea edx, [esi + 0x1b0]
push edx
push 1
push 0
push 0
push 0
push esi
call fcn.0045b550
add esp, 0x18
jmp 0x50d2b3
push esi
call fcn.0045bf70
add esp, 4
mov eax, dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x31
push eax
call edi
push eax
call fcn.005fe202
test eax, eax
je 0x50d375
mov edx, dword [eax + 4]
lea ecx, [esp + 0x2c]
push ecx
push 0x3c
push edx
call dword [sym.imp.GDI32.dll_GetObjectA]
test eax, eax
je 0x50d375
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
mov ecx, 0x3ff
and ax, cx
mov edx, 4
cmp dx, ax
je 0x50d30c
mov dword [esp + 0x3c], 0x258
mov eax, dword [esi + 0x20]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call fcn.005fdf46
mov ecx, dword [eax + 4]
push 0x48
push 0x5a
push ecx
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push 9
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [0x678e3c]
mov cl, byte [0x678e42]
neg eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x2c], eax
mov ax, word [0x678e40]
lea edx, [esp + 0x2c]
push edx
mov word [esp + 0x50], ax
mov byte [esp + 0x52], cl
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
test eax, eax
je 0x50d375
push 1
push eax
mov eax, dword [esi + 0x174]
push 0x30
push eax
call edi
cmp dword [0x75dd30], 0
je 0x50d3ea
push 0x123
push esi
mov ecx, 0x75dcf0
call fcn.004e6a60
xor ecx, ecx
mov dword [esp + 0x20], 0
mov dword [esp + 0x28], 0
mov word [esp + 0x24], cx
mov dword [esp + 0x74], ecx
mov edx, dword [0x75dd28]
mov eax, dword [0x75eda8]
push edx
push eax
lea ecx, [esp + 0x28]
call fcn.00401970
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x50d3cb
lea eax, [esp + 0x24]
mov ecx, dword [esi + 0x174]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov dword [esp + 0x74], 0xffffffff
lea ecx, [esp + 0x20]
call fcn.00401210
mov ecx, dword [0x75dbe4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0
push 0
push str.ComplDlgShowing
push ecx
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push 0
test eax, eax
jne 0x50d42b
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x194]
push edx
push 0xf1
push eax
jmp 0x50d439
mov ecx, dword [esi + 0x194]
push 1
push 0xf1
push ecx
call edi
mov ecx, dword [0x75dbe4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0
push 0
push str.bQueueSelPnlOnDlLt
push ecx
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push 0
test eax, eax
jne 0x50d47c
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x144]
push edx
push 0xf1
push eax
jmp 0x50d48a
mov ecx, dword [esi + 0x144]
push 1
push 0xf1
push ecx
call edi
mov ecx, dword [0x75dbe4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0
push 0
push str.bQueueSelPnlOnGAL
push ecx
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push 0
test eax, eax
jne 0x50d4cd
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x134]
push edx
push 0xf1
push eax
jmp 0x50d4db
mov ecx, dword [esi + 0x134]
push 1
push 0xf1
push ecx
call edi
mov ecx, dword [0x75dbe4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0
push 0
push str.bIgnMTCh
push ecx
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push 0
test eax, eax
jne 0x50d51e
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x164]
push edx
push 0xf1
push eax
jmp 0x50d52c
mov ecx, dword [esi + 0x164]
push 0
push 0xf1
push ecx
call edi
mov ecx, dword [0x75dbe4]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
push 0
push 0
push str.StartDlgShowing
push ecx
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push 0
test eax, eax
jne 0x50d56f
mov edx, dword [esp + 0x14]
mov eax, dword [esi + 0x184]
push edx
push 0xf1
push eax
jmp 0x50d585
mov ecx, dword [esi + 0x184]
push 1
push 0xf1
mov dword [esp + 0x1c], 1
push ecx
call edi
cmp byte [0x75e2aa], 0
je 0x50d5a2
mov edx, dword [esi + 0x1dc]
push 0
push 1
push 0xf1
push edx
call edi
cmp dword [esp + 0x10], 0
je 0x50d5b6
push 0
lea ecx, [esi + 0x1bc]
call fcn.005f5cec
mov eax, dword [0x75da08]
push eax
lea ecx, [esi + 0x88]
call fcn.005f5bdf
cmp byte [0x75e2ab], 0
je 0x50d5e2
mov ecx, dword [esi + 0x154]
push 0
push 1
push 0xf1
push ecx
call edi
mov edx, dword [0x75f37c]
push edx
mov ecx, ebp
call fcn.00424720
mov eax, dword [0x75f380]
push eax
mov ecx, ebp
call fcn.00424720
mov ecx, dword [0x75f384]
push ecx
mov ecx, ebp
call fcn.00424720
mov edx, dword [0x75f388]
push edx
mov ecx, ebp
call fcn.00424720
mov ecx, esi
call fcn.0050cc70
mov edx, dword [0x75dbe4]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
push ecx
push 0
push 0
push str.RememberDuplLinksA
mov edi, 4
push edx
mov dword [esp + 0x30], edi
call esi
test eax, eax
jne 0x50d656
cmp dword [esp + 0x1c], 1
je 0x50d65d
mov eax, dword [0x75f37c]
jmp 0x50d6a5
mov eax, dword [0x75dbe4]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x20]
push edx
push 0
push 0
push str.DuplLinksA
push eax
mov dword [esp + 0x30], edi
call esi
test eax, eax
jne 0x50d6a0
mov eax, dword [esp + 0x1c]
cmp eax, 1
jne 0x50d692
mov ecx, dword [0x75f380]
push ecx
jmp 0x50d6a6
cmp eax, 2
jne 0x50d6a0
mov edx, dword [0x75f384]
push edx
jmp 0x50d6a6
mov eax, dword [0x75f388]
push eax
push 0xffffffffffffffff
mov ecx, ebp
call fcn.004247e0
mov eax, 1
mov ecx, dword [esp + 0x6c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.00620b8d
add esp, 0x68
ret