Function at 0x468046
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x45c
mov eax, dword [0x5836e0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
xor ebx, ebx
push edi
mov edi, dword [ebp + 8]
cmp byte [0x5a22be], bl
je 0x4681dc
mov ecx, dword [0x5a23f0]
push ebx
call fcn.004683e1
call fcn.004e3cd3
movzx eax, al
lea ecx, [ebp - 0x458]
neg eax
push ecx
sbb eax, eax
and eax, 0x100
or eax, 0x20019
push eax
push ebx
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionConsoleTrueTypeFont
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x468386
push 0x40
lea eax, [ebp - 0x44]
push ebx
push eax
call fcn.004f5a90
add esp, 0xc
lea eax, [ebp - 0x450]
mov esi, ebx
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x45c]
push eax
push ebx
lea eax, [ebp - 0x44c]
push eax
lea eax, [ebp - 0x44]
push eax
push ebx
jmp 0x4681af
push 0x1f
inc esi
pop eax
cmp dword [ebp - 0x44c], eax
mov dword [ebp - 0x454], esi
cmovb eax, dword [ebp - 0x44c]
add eax, eax
cmp eax, 0x40
jae 0x4683db
xor ecx, ecx
mov word [ebp + eax - 0x44], cx
mov ecx, 0xfe
mov eax, dword [ebp - 0x450]
shr eax, 1
cmp eax, ecx
cmovb ecx, eax
add ecx, ecx
cmp ecx, 0x1fe
jae 0x4683db
xor eax, eax
mov word [ebp + ecx - 0x244], ax
cmp word [ebp - 0x244], ax
je 0x46818d
cmp word [ebp - 0x244], 0x2a
lea eax, [ebp - 0x244]
lea esi, [ebp - 0x242]
cmovne esi, eax
push esi
push 0xffffffffffffffff
push 0x158
push 0x6bf
push edi
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp eax, 0xffffffff
jne 0x468187
push esi
push ebx
push 0x143
push 0x6bf
push edi
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov esi, dword [ebp - 0x454]
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x45c]
push eax
push ebx
lea eax, [ebp - 0x44c]
push eax
lea eax, [ebp - 0x44]
push eax
push esi
push dword [ebp - 0x458]
mov dword [ebp - 0x44c], 0x20
mov dword [ebp - 0x450], 0x1fc
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
je 0x4680e8
jmp 0x468386
mov eax, dword [0x5a23f0]
mov byte [ebp - 0x445], bl
mov dword [eax + 0x11ffc], 3
test edi, edi
je 0x468347
call fcn.004e3b22
test al, al
je 0x468347
mov dword [ebp - 0x450], ebx
call fcn.004e3cd3
movzx eax, al
lea ecx, [ebp - 0x450]
neg eax
push ecx
sbb eax, eax
and eax, 0x100
or eax, 0x20019
push eax
push ebx
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionConsoleTrueTypeFont
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x468347
push 0x1fe
lea eax, [ebp - 0x244]
mov esi, ebx
push ebx
push eax
call fcn.004f5a90
add esp, 0xc
mov dword [ebp - 0x454], 0xff
lea eax, [ebp - 0x44c]
mov dword [ebp - 0x44c], 0x1fc
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x458]
push eax
push ebx
lea eax, [ebp - 0x454]
push eax
lea eax, [ebp - 0x444]
push eax
push ebx
jmp 0x46831f
inc esi
cmp dword [ebp - 0x458], 4
jne 0x4682d4
cmp word [ebp - 0x444], bx
je 0x4682d4
cmp word [ebp - 0x244], bx
je 0x4682d4
lea eax, [ebp - 0x244]
push eax
push ebx
push 0x143
push 0x6bf
push edi
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov byte [ebp - 0x445], 1
mov eax, 0x1fe
mov dword [ebp - 0x454], 0xff
push eax
mov dword [ebp - 0x44c], eax
lea eax, [ebp - 0x244]
push ebx
push eax
call fcn.004f5a90
add esp, 0xc
lea eax, [ebp - 0x44c]
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x458]
push eax
push ebx
lea eax, [ebp - 0x454]
push eax
lea eax, [ebp - 0x444]
push eax
push esi
push dword [ebp - 0x450]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
je 0x468298
push dword [ebp - 0x450]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp byte [ebp - 0x445], bl
jne 0x468365
push ebx
call dword [sym.imp.USER32.dll_GetDC]
push edi
push 0x46a590
mov esi, eax
push ebx
push esi
call dword [sym.imp.GDI32.dll_EnumFontFamiliesW]
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [0x5a23ec]
add eax, 0xc60
push eax
call fcn.00468855
pop ecx
test al, al
je 0x468386
mov eax, dword [0x5a23f0]
and dword [eax + 0x11ffc], 0xfffffffd
test edi, edi
je 0x4683be
mov eax, dword [0x5a23ec]
add eax, 0xc60
push eax
push 0x6bf
push edi
call fcn.004aa337
add esp, 0xc
test eax, eax
jns 0x4683be
mov eax, dword [0x5a23ec]
add eax, 0xc60
push eax
push 0x6bf
push edi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov eax, dword [0x5a23f0]
mov ecx, dword [ebp - 4]
pop edi
pop esi
cmp dword [eax + 0x11ffc], ebx
pop ebx
sete al
xor ecx, ebp
call fcn.004f4166
leave
ret
call fcn.004f4963
int3