Function at 0x590fb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb0
mov esi, esp
mov dword [esi + 0x98], ebp
mov dword [esi + 0x9c], esp
mov dword [esi + 0xa8], 0xffffffff
mov dword [esi + 0xa4], 0x704f40
mov dword [esi + 0x34], ecx
lea eax, [esi + 0xa0]
mov ebx, edx
xorps xmm0, xmm0
mov ecx, dword fs:[0]
mov dword [esi + 0xa0], ecx
mov dword fs:[0], eax
lea ecx, [esi + 0x70]
movups xmmword [esi + 0x70], xmm0
mov eax, dword [edx + 4]
push ecx
push eax
call dword [sym.imp.user32.dll_GetClientRect]
test eax, eax
je 0x591244
movsd xmm0, qword [esi + 0x70]
movsd xmm1, qword [esi + 0x78]
mov ecx, dword [ebx]
movaps xmmword [esi + 0x80], xmm0
movaps xmmword [esi + 0x60], xmm1
call fcn.006fc2a0
movsd xmm0, qword [eax + 0x88]
mov edi, eax
test dl, dl
movaps xmmword [esi + 0x40], xmm0
jne 0x59105a
mov eax, dword [0x919aac]
test eax, 0x7fffffff
jne 0x591200
push edi
call dword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
movapd xmm0, xmmword [esi + 0x40]
movsd qword [esi + 0x38], xmm0
mov eax, dword [esi + 0x3c]
test eax, eax
js 0x59122b
ucomisd xmm0, xmm0
jp 0x59122b
mov ecx, eax
and eax, 0x7ff00000
and ecx, 0xfffff
or ecx, dword [esi + 0x38]
jne 0x5910a5
cmp eax, 0x7ff00000
je 0x59122b
test eax, eax
je 0x59122b
test eax, eax
je 0x59122b
mov eax, dword [ebx + 4]
xorpd xmm0, xmm0
lea edi, [esi + 0x10]
movapd xmmword [esi + 0x10], xmm0
push edi
push eax
call dword [sym.imp.user32.dll_GetWindowRect]
test eax, eax
je 0x591276
movq xmm0, qword [esi + 0x10]
mov ecx, dword [ebx]
movdqa xmmword [esi + 0x50], xmm0
call fcn.006fc2a0
mov ebx, dword [eax + 0x90]
mov ecx, eax
test ebx, ebx
je 0x591151
mov eax, dword [ecx + 0x94]
test eax, eax
je 0x591153
mov dword [esi + 0x30], eax
mov byte [esi + 0xb], dl
mov dword [esi + 0xc], ecx
movzx eax, byte [0x919aa5]
mov eax, dword [0x919820]
test eax, eax
jne 0x59111f
call dword [sym.imp.kernel32.dll_GetProcessHeap]
test eax, eax
je 0x5912ae
mov dword [0x919820], eax
push 0xdc
push 0
push eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
test eax, eax
je 0x5912ae
mov edi, eax
push 0xdc
push dword [esi + 0x30]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [esi + 0xc]
movzx edx, byte [esi + 0xb]
jmp 0x591155
jmp 0x591155
xor edi, edi
movdqa xmm1, xmmword [esi + 0x60]
pxor xmm0, xmm0
movaps xmm2, xmmword [esi + 0x50]
test dl, dl
psubd xmm1, xmmword [esi + 0x80]
punpckldq xmm1, xmm0
movdqa xmm0, xmmword [0x7259c0]
por xmm1, xmm0
subpd xmm1, xmm0
movapd xmm0, xmmword [esi + 0x40]
unpcklpd xmm0, xmm0
divpd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtdq2ps xmm1, xmm2
movapd xmmword [esi + 0x40], xmm0
movaps xmmword [esi + 0x60], xmm1
jne 0x5911ab
mov eax, dword [0x919aac]
test eax, 0x7fffffff
jne 0x591216
push ecx
call dword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov eax, dword [esi + 0x34]
movaps xmm0, xmmword [esi + 0x60]
movaps xmm1, xmmword [esi + 0x40]
test ebx, ebx
mov dword [eax], 1
movlps qword [eax + 4], xmm0
mov byte [eax + 0x18], bl
mov dword [eax + 0xc], 1
movlps qword [eax + 0x10], xmm1
je 0x5911ec
test edi, edi
je 0x5911ec
push edi
push 0
push dword [0x919820]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esi + 0xa0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.00721f90
test al, al
jne 0x59105a
mov byte [edi + 4], 1
jmp 0x59105a
mov dword [esi + 0xc], ecx
call fcn.00721f90
mov ecx, dword [esi + 0xc]
test al, al
jne 0x5911ab
mov byte [ecx + 4], 1
jmp 0x5911ab
mov ecx, 0x8f6daf
mov edx, 0x35
push 0x743e50
call fcn.0070a0f0
add esp, 4
ud2
lea ecx, [esi + 0x10]
mov edx, 0x743e40
mov dword [esi + 0x10], 0x743e38
mov dword [esi + 0x14], 1
mov dword [esi + 0x20], 0
mov dword [esi + 0x18], str.not_implementedC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinit_0.28.6_srcplatform_implwindowsdrop_handler.rs
mov dword [esi + 0x1c], 0
call fcn.00709f70
ud2
call sub.kernel32.dll_GetLastError
mov dword [esi + 0x14], eax
mov dword [esi + 0x10], 0
mov dword [esi + 0xa8], 0
mov ecx, str.Unexpected_GetWindowRect_failure__please_report_this_error_to_https:__github.com_rust_windowing_winit
mov edx, 0x65
push 0x743ec8
push 0x743dc0
push edi
call fcn.0070a360
add esp, 0xc
jmp 0x5912c7
mov ecx, 4
mov edx, 0xdc
mov dword [esi + 0xa8], 1
call fcn.00709d20
ud2