Function at 0x46fd90
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x4c
cmp dword [ebp + 8], 0
jne 0x46fdb2
push 0x39e
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
call fcn.00443450
test eax, eax
je 0x46fdb2
int3
call fcn.004434e0
mov dword [ebp - 0xc], eax
push 5
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.DLL_FindResourceA]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x46fe50
cmp dword [ebp + 8], 0xffff
jbe 0x46fe0f
mov eax, dword [ebp + 8]
push eax
push str.ERROR:_Cannot_find_dialog_template_named__s._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3a4
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x1c]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
jmp 0x46fe49
mov ecx, dword [ebp + 8]
and ecx, 0xffff
movzx edx, cx
push edx
push str.ERROR:_Cannot_find_dialog_template_with_IDD_0x_04X._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3a7
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x24]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
xor eax, eax
jmp 0x470001
cmp dword [ebp + 0xc], 0
jne 0x46fe60
mov eax, 1
jmp 0x470001
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.DLL_LoadResource]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x46feae
push str.Warning:_LoadResource_failed_for_dialog_template._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3b4
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x2c]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x10
mov eax, 1
jmp 0x470001
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.DLL_LockResource]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
movzx ecx, word [eax + 2]
cmp ecx, 0xffff
jne 0x46fed5
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x10], eax
jmp 0x46fedd
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
push eax
call fcn.0041ec70
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.DLL_FreeResource]
mov edx, dword [ebp - 0x10]
and edx, 0x10000000
je 0x46ff78
cmp dword [ebp + 8], 0xffff
jbe 0x46ff37
mov eax, dword [ebp + 8]
push eax
push str.ERROR:_Dialog_named__s_must_be_invisible._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3c4
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x34]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
jmp 0x46ff71
mov ecx, dword [ebp + 8]
and ecx, 0xffff
movzx edx, cx
push edx
push str.ERROR:_Dialog_with_IDD_0x_04X_must_be_invisible._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3c7
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x3c]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
xor eax, eax
jmp 0x470001
mov eax, dword [ebp - 0x10]
and eax, 0x40000000
jne 0x46fffc
cmp dword [ebp + 8], 0xffff
jbe 0x46ffbe
mov ecx, dword [ebp + 8]
push ecx
push str.ERROR:_Dialog_named__s_must_have_the_child_style._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3ce
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x44]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
jmp 0x46fff8
mov edx, dword [ebp + 8]
and edx, 0xffff
movzx eax, dx
push eax
push str.ERROR:_Dialog_with_IDD_0x_04X_must_have_the_child_style._n
push 0
mov ecx, 0x8a47dc
call fcn.004016f0
push eax
push 0x3d1
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x4c]
call fcn.00401640
push eax
call fcn.00404450
add esp, 0x14
xor eax, eax
jmp 0x470001
mov eax, 1
mov esp, ebp
pop ebp
ret 8