Function at 0x407ffc
Capabilities:
Inspect load icon resource

Disassembly:
push 0x24
mov eax, 0x5cc5fd
call fcn.00595e53
mov ebx, dword [ebp + 8]
and dword [ebp - 4], 0
push 0xec
call fcn.00565bb9
pop ecx
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x40802d
push eax
call fcn.0041eb30
jmp 0x40802f
xor eax, eax
mov byte [ebp - 4], 0
mov dword [ebx + 0x12c], eax
or edi, 0xffffffff
mov dword [ebp - 4], edi
mov eax, dword [ebx + 0x54]
add eax, 4
mov ecx, dword [ebx + 0x12c]
mov dword [ecx + 0x9c], eax
mov eax, dword [ebx + 0x54]
add eax, 0x724
mov ecx, dword [ebx + 0x12c]
mov dword [ecx + 0xa0], eax
mov eax, dword [ebx + 0x54]
add eax, 0x6c8
mov ecx, dword [ebx + 0x12c]
mov dword [ecx + 0xa4], eax
mov eax, dword [ebx + 0x54]
add eax, 0x674
mov ecx, dword [ebx + 0x12c]
mov dword [ecx + 0xa8], eax
mov ecx, dword [ebx + 0x12c]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x54]
add edx, 0x7e8
push edx
call dword [eax + 0x15c]
mov ecx, dword [ebx + 0x12c]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x54]
add edx, 0xd0c
push edx
call dword [eax + 0x164]
mov eax, dword [ebx + 0x54]
add eax, 4
lea ecx, [ebp + 8]
push ecx
push eax
call fcn.00404b87
mov dword [ebp - 4], 7
mov eax, dword [ebx + 0x12c]
mov dword [ebp - 4], 8
lea ecx, [eax + 0xe0]
lea eax, [ebp + 8]
push eax
call fcn.004048fa
mov dword [ebp - 4], edi
lea ecx, [ebp + 8]
call fcn.00401752
mov eax, dword [ebx + 0x54]
add eax, 4
lea ecx, [ebp + 8]
push ecx
push eax
call fcn.004072fd
mov dword [ebp - 4], 9
mov esi, dword [ebx + 0x12c]
mov dword [ebp - 4], 0xa
lea ecx, [esi + 0xdc]
lea eax, [ebp + 8]
push eax
call fcn.004048fa
call fcn.0056eb95
call fcn.0056eb95
mov eax, dword [eax + 0xc]
push 0x66
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [esi + 0xd8], eax
mov dword [esi + 0x74], ebx
push 0
push 0x1f7
mov ecx, esi
call fcn.0056728e
mov esi, eax
mov dword [ebp - 4], edi
lea ecx, [ebp + 8]
call fcn.00401752
test esi, esi
jne 0x4081fb
push 1
push 0x1e0
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.CMainWnd::InitDialogs
call fcn.004015a6
mov dword [ebp - 4], 0xb
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.abnormal
call fcn.004015a6
mov byte [ebp - 4], 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
push str.Create_main_dialog_failed_
call fcn.004015a6
mov byte [ebp - 4], 0xd
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.maincreate
call fcn.004015a6
mov byte [ebp - 4], 0xe
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov dword [ebp - 4], edi
mov esi, dword [ebx + 0x54]
call fcn.00401c9a
mov eax, dword [ebx + 0x12c]
mov ecx, dword [ebx + 0x54]
mov eax, dword [eax + 0x98]
mov dword [ecx + 0xbfc], eax
xor eax, eax
call fcn.00595ef8
ret 4
mov ecx, dword [ebx + 0x12c]
call fcn.0041edce
test eax, eax
jne 0x408246
mov edi, dword [ebx + 0x12c]
add edi, 0x78
mov esi, dword [ebx + 0x54]
add esi, 0xbdc
call fcn.0040bb5c
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.abnormal
call fcn.004015a6
mov dword [ebp - 4], 0xf
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebx + 0x54]
call fcn.00404dfb
jmp 0x4081f1
mov eax, dword [ebx + 0x12c]
lea ecx, [ebp - 0x30]
push ecx
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x16
xor eax, eax
push eax
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x30]
push ecx
push eax
push eax
push eax
mov ecx, ebx
call fcn.00566164
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.InitDialogs_finished
call fcn.004015a6
mov dword [ebp - 4], 0x10
push 4
mov dword [ebp - 4], edi
call fcn.0040b216
xor eax, eax
inc eax
jmp 0x4081f3