Function at 0x5373e0
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x85080d
mov eax, dword fs:[0]
push eax
sub esp, 0x38
push esi
push edi
mov eax, dword [0xa5e224]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 0x18]
cmp eax, 0xffffffff
jne 0x537436
cmp esi, eax
jne 0x537436
mov edi, dword [ebp + 0xc]
mov esi, edi
mov byte [ebp - 0xd], 0
cmp dword [edi + 0x14], 8
jb 0x537427
mov esi, dword [edi]
call fcn.00773000
push esi
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
jmp 0x5374a2
mov byte [ebp - 0xd], 1
cmp eax, 0xffffffff
je 0x537444
cmp esi, 0xffffffff
jne 0x537482
cmp dword [0xa5d6f8], 0
je 0x537482
push str.width_and_height_should_be_either_both__1_or_not
push str._hasSize___desiredWidth____1__desiredHeight____1_
push str.wxICOResourceHandler::LoadIcon
push 0x251
push str.C:_vcpkg_buildtreeswxwidgets_src_v3.2.3_90b1eb06ca.clean_srcmswgdiimage.cpp
call fcn.0073cfd0
add esp, 0x14
cmp byte [0xea569c], 0
je 0x53747f
mov byte [0xea569c], 0
int3
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov ecx, edi
cmp dword [edi + 0x14], 8
jb 0x53748f
mov ecx, dword [edi]
push 0
push esi
push eax
push 1
push ecx
call fcn.00773000
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x5374ff
cmp byte [ebp - 0xd], al
jne 0x5374ea
mov dword [ebp + 0xc], eax
xor esi, esi
cmp esi, 0x20
jae 0x5374ea
push dword [esi + 0x8bd304]
mov ecx, edi
call fcn.00739650
test eax, eax
je 0x5374d1
inc dword [ebp + 0xc]
add esi, 8
jmp 0x5374b3
mov eax, dword [ebp + 0xc]
push dword [eax*8 + 0x8bd308]
push 0
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x5374ff
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x14
cmp byte [ebp - 0xd], 0
movsd xmm0, qword [0x8953c8]
je 0x537518
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 0x14]
jmp 0x5375e5
xor esi, esi
xor edi, edi
xorps xmm0, xmm0
mov dword [ebp + 0x14], edi
mov dword [ebp + 0x18], esi
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], esi
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], esi
call fcn.005345c0
test al, al
je 0x537573
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x537560
lea ecx, [ebp - 0x44]
push ecx
push 0x18
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
test eax, eax
je 0x537560
mov edi, dword [ebp - 0x40]
mov esi, dword [ebp - 0x3c]
mov dword [ebp + 0x14], edi
mov dword [ebp + 0x18], esi
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
jne 0x537576
mov eax, esi
cdq
sub eax, edx
sar eax, 1
mov dword [ebp + 0x18], eax
jmp 0x537576
mov ecx, dword [ebp - 0x1c]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x53758a
push ecx
call esi
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x537594
push eax
call esi
test edi, edi
jne 0x5375b8
call fcn.004e5220
mov esi, eax
push esi
push 0xb
call fcn.00512060
push esi
push 0xc
mov edi, eax
call fcn.00512060
add esp, 0x10
mov esi, eax
jmp 0x5375be
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 0x14]
call fcn.004e5220
mov ecx, eax
test ecx, ecx
je 0x5375dd
mov eax, dword [ecx]
mov eax, dword [eax + 0xcc]
call eax
fstp qword [ebp - 0x18]
movsd xmm0, qword [ebp - 0x18]
jmp 0x5375e5
movsd xmm0, qword [0x8953c8]
mov ecx, dword [ebp + 8]
sub esp, 8
movsd qword [esp], xmm0
push esi
push edi
push dword [ebp + 0xc]
call fcn.00545910
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x14