Function at 0x556e23
Capabilities:
Inspect load icon resource

Disassembly:
push 0x64
mov eax, 0x6a4c26
call fcn.0056e23b
mov ebx, ecx
xor edi, edi
mov dword [ebp - 0x40], edi
cmp dword [0x7960fc], edi
jle 0x556e4d
push str.__Create_WM___Begin
mov ecx, 0x77b084
call fcn.0042e683
mov ecx, 0x796710
call fcn.004d887e
test eax, eax
je 0x556e6e
lea esi, [ebx + 0x1e8]
push esi
push str.PRO_NAME
push 0x6ff7c4
jmp 0x556e7f
lea eax, [ebx + 0x1e8]
push eax
push str.PROGRAM_NAME
push 0x6ff7f0
call fcn.004a069c
add esp, 0xc
mov dword [ebp - 0x50], edi
lea eax, [ebp - 0x50]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
push eax
call fcn.004a051b
pop ecx
test eax, eax
je 0x556ec1
push dword [ebp - 0x44]
lea eax, [ebx + 0x200]
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push str.v_u._u._u_Build__u__32_bit_
push eax
call fcn.0041ccda
add esp, 0x18
cmp dword [0x7960fc], edi
jle 0x556eea
lea eax, [ebx + 0x204]
cmp dword [eax + 0x14], 8
jb 0x556ed7
mov eax, dword [eax]
push eax
push str.__Create_WM____s
push 0x77b084
call fcn.0042e634
add esp, 0xc
push 0x6c
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
call edi
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push eax
call esi
push eax
push 0x6b
push 0
call edi
push eax
call esi
push eax
push 0xb
xor edi, edi
push edi
push 0x6ff85c
call fcn.00582d3d
add esp, 0x14
test eax, eax
je 0x557136
mov esi, 0x77b084
cmp dword [0x7960fc], edi
jle 0x556f3c
push str.__Create_WM___Step_4
mov ecx, esi
call fcn.0042e683
push edi
push 9
push 0x50
push 7
mov ecx, ebx
call fcn.00581c44
cmp dword [0x7960fc], edi
jle 0x556f5e
push str.__Create_WM___Step_4A
mov ecx, esi
call fcn.0042e683
push 0x7c
call fcn.0056def4
pop ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 4], edi
test eax, eax
je 0x556f7c
mov ecx, eax
call fcn.005823c6
mov dword [ebp - 0x3c], eax
jmp 0x556f81
mov eax, edi
mov dword [ebp - 0x3c], edi
or dword [ebp - 4], 0xffffffff
test eax, eax
je 0x557112
cmp dword [0x7960fc], 0
jle 0x556fa2
push str.__Create_WM___Step_5
mov ecx, esi
call fcn.0042e683
push edi
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
call edi
push 1
call edi
mov eax, dword [0x7d6e98]
push 0
mov esi, dword [eax + 0x4b8]
call edi
sub eax, dword [esi]
cdq
sub eax, edx
sar eax, 1
mov dword [ebx + 0x6d8], eax
mov eax, dword [0x7d6e98]
push 1
mov esi, dword [eax + 0x4bc]
call edi
sub eax, dword [esi]
cdq
sub eax, edx
movaps xmm0, xmmword [0x6b4400]
sar eax, 1
mov dword [ebx + 0x6dc], eax
mov eax, dword [0x7d6e98]
mov eax, dword [eax + 0x4b8]
mov eax, dword [eax]
add eax, dword [ebx + 0x6d8]
mov dword [ebx + 0x6e0], eax
mov eax, dword [0x7d6e98]
mov eax, dword [eax + 0x4bc]
mov eax, dword [eax]
add eax, dword [ebx + 0x6dc]
mov dword [ebx + 0x6e4], eax
mov eax, dword [0x7d6e98]
mov dword [0x79670c], ebx
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x28], 6
mov dword [ebp - 0x24], 0x4d
mov ecx, dword [eax + 0x4bc]
mov edx, dword [eax + 0x4b8]
lea eax, [ebx + 0x1e8]
cmp dword [eax + 0x14], 8
jb 0x557057
mov eax, dword [eax]
lea esi, [ebp - 0x38]
xor edi, edi
push esi
push 0xff
push edi
mov esi, dword [ebp - 0x3c]
push 0x86ca0080
push dword [ecx]
mov ecx, esi
push dword [edx]
push dword [ebx + 0x6dc]
push dword [ebx + 0x6d8]
push eax
push dword [0x796104]
push 0x6ff900
push edi
push ebx
call fcn.005824ed
test eax, eax
je 0x5570f0
cmp dword [0x7960fc], edi
jle 0x5570ab
push str.__Create_WM___Step_6
mov ecx, 0x77b084
call fcn.0042e683
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x44]
mov dword [0x796108], eax
mov ecx, ebx
mov eax, dword [ebx]
call dword [eax + 0x44]
push eax
mov ecx, ebx
call fcn.00580987
mov ecx, eax
call fcn.00582867
mov ecx, esi
call fcn.0067f1c7
mov dword [ebp - 0x40], 1
push 1
push edi
push edi
push edi
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x5570db
jmp 0x557107
cmp dword [0x7960fc], edi
jle 0x557107
push str.__Create_WM___Step_6_Failed_
mov ecx, 0x77b084
call fcn.0042e683
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax + 0x1c]
jmp 0x557127
cmp dword [0x7960fc], 0
jle 0x557127
push str.__Create_WM___Step_5_Failed_
mov ecx, esi
call fcn.0042e683
push edi
push str.cbfxFrameWnd
call fcn.00582e78
pop ecx
pop ecx
jmp 0x55714d
cmp dword [0x7960fc], edi
jle 0x55714d
push str.__Create_WM___Step_4_Failed_
mov ecx, 0x77b084
call fcn.0042e683
mov eax, dword [ebp - 0x40]
call fcn.0056e1e5
ret