Function at 0x4022a0
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x499915
mov eax, dword fs:[0]
push eax
sub esp, 0x15c
mov eax, dword [0x4c3718]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x164], edi
mov esi, dword [ebp + 8]
call fcn.00402670
mov ecx, eax
call fcn.00411420
push esi
call fcn.00402550
mov ecx, eax
call fcn.0040fd00
call fcn.004028b0
mov ecx, eax
call fcn.0040d070
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov ecx, edi
call fcn.0045f110
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0
call edi
push eax
call fcn.00416060
lea eax, [ebp - 0x28]
push 0
push eax
call fcn.00411d50
push 0x2c
lea eax, [ebp - 0x15c]
mov dword [ebp - 4], 0
push 0
push eax
call fcn.00474170
add esp, 0x14
mov dword [ebp - 0x160], 0x30
push 0
call edi
cmp dword [ebp - 0x14], 8
mov dword [ebp - 0x14c], eax
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push 0
push 0
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x158], 0x401d50
call edi
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x148], eax
lea eax, [ebp - 0x160]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExW]
cmp dword [ebp - 0x14], 8
lea esi, [ebp - 0x28]
push 0
cmovae esi, dword [ebp - 0x28]
push 0
call edi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0x86ca0000
push 0
push esi
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov esi, dword [ebp - 0x164]
mov dword [esi + 0x248], eax
test eax, eax
jne 0x4023d5
xor esi, esi
jmp 0x402514
push esi
push 0xffffffffffffffeb
push eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 0x20
call fcn.00472972
mov edi, eax
add esp, 4
mov dword [ebp - 0x168], edi
mov byte [ebp - 4], 1
test edi, edi
je 0x402436
xorps xmm0, xmm0
mov ecx, edi
movups xmmword [edi], xmm0
movups xmmword [edi + 0x10], xmm0
mov esi, dword [esi + 0x380]
call fcn.0045e9e0
mov dword [edi + 0x10], esi
mov esi, dword [ebp - 0x164]
mov dword [edi], vtable.Phxlib::CTaskMgrHelper_class_CADApp_::CTaskParam2.0
mov dword [edi + 0x14], method.duButton.virtual_328
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
jmp 0x402438
xor edi, edi
mov ecx, dword [esi + 0x384]
push edi
mov byte [ebp - 4], 0
call fcn.0045eec0
call fcn.00402790
mov ecx, eax
call fcn.00409a90
call fcn.00402550
mov edi, dword [eax + 0xa8]
call fcn.00402550
lea ecx, [ebp - 0x130]
mov eax, dword [eax + 0xac]
mov dword [ebp - 0x164], eax
call fcn.00401780
mov ecx, dword [ebp - 0x164]
mov byte [ebp - 4], 2
test edi, edi
jne 0x4024a5
test ecx, ecx
jne 0x4024a5
push edi
mov ecx, esi
call fcn.00402120
test eax, eax
jne 0x4024ea
mov ecx, esi
call fcn.00402a40
lea esi, [edi + 1]
jmp 0x402509
lea eax, [esi + 0x278]
push eax
push ecx
push edi
call fcn.00402790
mov ecx, eax
call fcn.00409be0
test eax, eax
je 0x4024d8
push edi
mov ecx, esi
call fcn.00402120
test eax, eax
jne 0x4024d8
mov ecx, esi
call fcn.00403100
mov esi, 1
jmp 0x402509
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x128], edi
mov dword [ebp - 0x130], eax
lea eax, [ebp - 0x130]
mov dword [ebp - 0xfc], 5
push eax
call fcn.004028b0
mov ecx, eax
call fcn.0040e710
xor esi, esi
lea ecx, [ebp - 0x130]
call fcn.00401920
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x402529
inc ecx
push ecx
push dword [ebp - 0x28]
lea ecx, [ebp - 0x28]
call fcn.00404150
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00472961
mov esp, ebp
pop ebp
ret 4