Function at 0x537260
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x8505fd
mov eax, dword fs:[0]
push eax
sub esp, 0x38
push esi
push edi
mov eax, dword [0xa5d1d4]
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 0x5372b6
cmp esi, eax
jne 0x5372b6
mov edi, dword [ebp + 0xc]
mov esi, edi
mov byte [ebp - 0xd], 0
cmp dword [edi + 0x14], 8
jb 0x5372a7
mov esi, dword [edi]
call fcn.00772e90
push esi
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
jmp 0x537322
mov byte [ebp - 0xd], 1
cmp eax, 0xffffffff
je 0x5372c4
cmp esi, 0xffffffff
jne 0x537302
cmp dword [0xa5c6a0], 0
je 0x537302
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.0073ce90
add esp, 0x14
cmp byte [0xea464c], 0
je 0x5372ff
mov byte [0xea464c], 0
int3
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov ecx, edi
cmp dword [edi + 0x14], 8
jb 0x53730f
mov ecx, dword [edi]
push 0
push esi
push eax
push 1
push ecx
call fcn.00772e90
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x53737f
cmp byte [ebp - 0xd], al
jne 0x53736a
mov dword [ebp + 0xc], eax
xor esi, esi
cmp esi, 0x20
jae 0x53736a
push dword [esi + 0x8bc284]
mov ecx, edi
call fcn.00739510
test eax, eax
je 0x537351
inc dword [ebp + 0xc]
add esi, 8
jmp 0x537333
mov eax, dword [ebp + 0xc]
push dword [eax*8 + 0x8bc288]
push 0
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x53737f
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 [0x894348]
je 0x537398
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 0x14]
jmp 0x537465
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.00534440
test al, al
je 0x5373f3
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5373e0
lea ecx, [ebp - 0x44]
push ecx
push 0x18
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
test eax, eax
je 0x5373e0
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 0x5373f6
mov eax, esi
cdq
sub eax, edx
sar eax, 1
mov dword [ebp + 0x18], eax
jmp 0x5373f6
mov ecx, dword [ebp - 0x1c]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x53740a
push ecx
call esi
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x537414
push eax
call esi
test edi, edi
jne 0x537438
call fcn.004e50c0
mov esi, eax
push esi
push 0xb
call fcn.00511ef0
push esi
push 0xc
mov edi, eax
call fcn.00511ef0
add esp, 0x10
mov esi, eax
jmp 0x53743e
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 0x14]
call fcn.004e50c0
mov ecx, eax
test ecx, ecx
je 0x53745d
mov eax, dword [ecx]
mov eax, dword [eax + 0xcc]
call eax
fstp qword [ebp - 0x18]
movsd xmm0, qword [ebp - 0x18]
jmp 0x537465
movsd xmm0, qword [0x894348]
mov ecx, dword [ebp + 8]
sub esp, 8
movsd qword [esp], xmm0
push esi
push edi
push dword [ebp + 0xc]
call fcn.005457a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x14