Function at 0x45aa90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x64
mov edx, dword [sym.imp.user32.dll_GetDC]
mov dword [esp], 0
mov dword [ebp - 0x58], edx
call edx
mov edi, dword [sym.imp.gdi32.dll_EnumFontFamiliesA]
sub esp, 4
mov esi, eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x445950
mov dword [esp + 4], 0x4ab865
mov dword [esp], eax
call edi
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], esi
mov esi, dword [sym.imp.user32.dll_ReleaseDC]
mov dword [esp], 0
call esi
sub esp, 8
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1582
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.MS_Shell_Dlg_should_be_enumerated_n
mov dword [esp], eax
call fcn.004471c0
mov eax, 0x4ab865
call fcn.004460c0
mov ebx, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1584
mov dword [esp], ebx
mov dword [esp + 4], str.MS_Shell_Dlg_should_be_enumerated_as_a_TrueType_font_n
call fcn.004471c0
mov dword [esp], 0
mov edx, dword [ebp - 0x58]
call edx
sub esp, 4
mov ebx, eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x445950
mov dword [esp + 4], str.MS_Shell_Dlg_2
mov dword [esp], eax
call edi
sub esp, 0x10
mov edi, eax
mov dword [esp + 4], ebx
mov dword [esp], 0
call esi
lea esi, [ebp - 0x54]
sub esp, 8
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1587
xor eax, eax
test edi, edi
sete al
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_be_enumerated_n
mov dword [esp], eax
call fcn.004471c0
mov eax, str.MS_Shell_Dlg_2
call fcn.004460c0
mov ebx, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1589
mov dword [esp], ebx
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_be_enumerated_as_a_TrueType_font_n
call fcn.004471c0
mov dword [esp], 0
call dword [sym.imp.gdi32.dll_CreateCompatibleDC]
mov dword [ebp - 0x54], 0
sub esp, 4
mov dword [ebp - 0x50], 0
mov ebx, eax
mov dword [ebp - 0x4c], 0
mov dword [esp], eax
mov eax, dword [sym.imp.gdi32.dll_EnumFontFamiliesExA]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x446b10
mov dword [esp + 4], 0
mov dword [ebp - 0x58], eax
call eax
sub esp, 0x14
mov edi, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x158f
mov dword [esp], edi
mov dword [esp + 4], str.MS_Shell_Dlg_should_not_be_enumerated_n
call fcn.004471c0
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1590
xor eax, eax
mov dword [esp + 4], str.MS_Shell_Dlg_should_not_be_enumerated_n
mov edi, dword [ebp - 0x54]
test edi, edi
lea edi, [ebp - 0x48]
sete al
mov dword [esp], eax
call fcn.004471c0
xor eax, eax
mov ecx, 0xf
mov dword [ebp - 0x54], 0
rep stosd dword es:[edi], eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 0x31], 1
mov dword [ebp - 0x2c], 0x5320534d
mov dword [ebp - 0x28], 0x6c6c6568
mov dword [ebp - 0x24], 0x676c4420
mov dword [esp + 4], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x446b10
mov dword [esp], ebx
mov eax, dword [ebp - 0x58]
call eax
sub esp, 0x14
mov edi, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1598
xor eax, eax
test edi, edi
sete al
mov dword [esp + 4], str.MS_Shell_Dlg_should_be_enumerated_n
mov dword [esp], eax
call fcn.004471c0
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x1599
xor eax, eax
mov dword [esp + 4], str.MS_Shell_Dlg_should_be_enumerated_n
mov edx, dword [ebp - 0x54]
test edx, edx
setg al
mov dword [esp], eax
call fcn.004471c0
mov ecx, dword [ebp - 0x54]
test ecx, ecx
jne 0x45ae88
mov dword [ebp - 0x54], 0
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x446c20
mov dword [esp + 4], 0
mov dword [esp], ebx
mov eax, dword [ebp - 0x58]
call eax
sub esp, 0x14
mov edi, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x15a4
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_not_be_enumerated_n
mov dword [esp], edi
call fcn.004471c0
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x15a5
xor eax, eax
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_not_be_enumerated_n
mov edx, dword [ebp - 0x54]
test edx, edx
sete al
mov dword [esp], eax
call fcn.004471c0
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x24], 0x676c4420
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x2c], 0x5320534d
mov dword [ebp - 0x28], 0x6c6c6568
mov dword [ebp - 0x21], 0x322067
mov dword [esp + 4], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x446c20
mov dword [esp], ebx
mov eax, dword [ebp - 0x58]
call eax
sub esp, 0x14
mov esi, eax
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x15aa
xor eax, eax
test esi, esi
sete al
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_be_enumerated_n
mov dword [esp], eax
call fcn.004471c0
call fcn.00492bc0
mov dword [eax], 0x4ab7f5
mov dword [eax + 4], 0x15ab
xor eax, eax
mov dword [esp + 4], str.MS_Shell_Dlg_2_should_be_enumerated_n
mov ecx, dword [ebp - 0x54]
test ecx, ecx
setg al
mov dword [esp], eax
call fcn.004471c0
mov esi, dword [ebp - 0x54]
test esi, esi
jne 0x45af10
mov eax, dword [ebp - 0x4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_free]
mov dword [esp], ebx
call dword [sym.imp.gdi32.dll_DeleteDC]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x4c]
mov edx, dword [sym.imp.msvcrt.dll_strcmp]
mov dword [esp + 4], 0x4ab865
add eax, 0x1c
mov dword [esp], eax
mov dword [ebp - 0x5c], edx
call edx
mov edi, eax
mov eax, 0x159d
call fcn.00446860
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], str.expected_MS_Shell_Dlg__got__s_n
add eax, 0x1c
mov dword [esp + 8], eax
xor eax, eax
test edi, edi
sete al
mov dword [esp], eax
call fcn.004471c0
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], 0x4ab865
add eax, 0x3c
mov dword [esp], eax
mov edx, dword [ebp - 0x5c]
call edx
mov edi, eax
mov eax, 0x159f
call fcn.00446860
mov dword [esp + 4], str.did_not_expect_MS_Shell_Dlg_n
mov dword [esp], edi
call fcn.004471c0
jmp 0x45ad39
mov eax, dword [ebp - 0x4c]
mov edi, dword [sym.imp.msvcrt.dll_strcmp]
mov dword [esp + 4], str.MS_Shell_Dlg_2
add eax, 0x1c
mov dword [esp], eax
call edi
mov esi, eax
mov eax, 0x15af
call fcn.00446860
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], str.expected_MS_Shell_Dlg_2__got__s_n
add eax, 0x1c
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp], eax
call fcn.004471c0
mov eax, dword [ebp - 0x4c]
mov dword [esp + 4], str.MS_Shell_Dlg_2
add eax, 0x3c
mov dword [esp], eax
call edi
mov esi, eax
mov eax, 0x15b1
call fcn.00446860
mov dword [esp + 4], str.did_not_expect_MS_Shell_Dlg_2_n
mov dword [esp], esi
call fcn.004471c0
jmp 0x45ae62