Function at 0x454290
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
cmp dword [ebp + 8], 0
jne 0x4542b0
push 0x36a
push 0x53f3d4
call fcn.0045b590
test eax, eax
je 0x4542b0
int3
call fcn.0043a140
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_FindResourceW]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x45434e
cmp dword [ebp + 8], 0xffff
jbe 0x45430d
mov eax, dword [ebp + 8]
push eax
push str.ERROR:_Cannot_find_dialog_template_named__s._n
push 0
mov ecx, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x370
push 0x53f40c
lea ecx, [ebp - 0x1c]
call fcn.00401100
push eax
call fcn.00401120
add esp, 0x14
jmp 0x454347
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, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x373
push 0x53f4a8
lea ecx, [ebp - 0x24]
call fcn.00401100
push eax
call fcn.00429920
add esp, 0x14
xor eax, eax
jmp 0x4544ff
cmp dword [ebp + 0xc], 0
jne 0x45435e
mov eax, 1
jmp 0x4544ff
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 0x4543ac
push str.Warning:_LoadResource_failed_for_dialog_template._n
push 0
mov ecx, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x380
push 0x53f518
lea ecx, [ebp - 0x2c]
call fcn.00401100
push eax
call fcn.00429920
add esp, 0x10
mov eax, 1
jmp 0x4544ff
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 0x4543d3
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x10], eax
jmp 0x4543db
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
push eax
call fcn.0044a950
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov edx, dword [ebp - 0x10]
and edx, 0x10000000
je 0x454476
cmp dword [ebp + 8], 0xffff
jbe 0x454435
mov eax, dword [ebp + 8]
push eax
push str.ERROR:_Dialog_named__s_must_be_invisible._n
push 0
mov ecx, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x390
push 0x53f584
lea ecx, [ebp - 0x34]
call fcn.00401100
push eax
call fcn.00401120
add esp, 0x14
jmp 0x45446f
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, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x393
push 0x53f61c
lea ecx, [ebp - 0x3c]
call fcn.00401100
push eax
call fcn.00429920
add esp, 0x14
xor eax, eax
jmp 0x4544ff
mov eax, dword [ebp - 0x10]
and eax, 0x40000000
jne 0x4544fa
cmp dword [ebp + 8], 0xffff
jbe 0x4544bc
mov ecx, dword [ebp + 8]
push ecx
push str.ERROR:_Dialog_named__s_must_have_the_child_style._n
push 0
mov ecx, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x39a
push 0x53f688
lea ecx, [ebp - 0x44]
call fcn.00401100
push eax
call fcn.00401120
add esp, 0x14
jmp 0x4544f6
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, 0x5c97d8
call fcn.0040d7e0
push eax
push 0x39d
push str.f:dd_vctools_vc7libs_ship_atlmfc_srcmfcdlgcore.cpp
lea ecx, [ebp - 0x4c]
call fcn.00401100
push eax
call fcn.00429920
add esp, 0x14
xor eax, eax
jmp 0x4544ff
mov eax, 1
mov esp, ebp
pop ebp
ret 8