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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x150
mov esi, esp
mov dword [esi + 0x138], ebp
mov dword [esi + 0x13c], esp
mov dword [esi + 0x148], 0xffffffff
mov dword [esi + 0x144], 0x7043f0
mov edx, dword [ebp + 0x10]
lea eax, [esi + 0x140]
mov ecx, dword fs:[0]
mov dword [esi + 0x140], ecx
mov dword fs:[0], eax
mov edx, dword [edx + 0xe0]
mov eax, dword [edx + 8]
lea ecx, [edx + 8]
mov dword [esi + 0x10], ecx
test al, 8
jne 0x52753d
mov ebx, eax
add ebx, 0x10
jb 0x52753d
lock cmpxchg dword [ecx], ebx
je 0x527556
mov byte [esi + 3], 1
mov dword [esi + 0x148], 0
mov dword [esi + 0x60], edx
call fcn.00719890
mov edx, dword [esi + 0x60]
cmp dword [edx + 0x658], 0
mov dword [esi + 0x148], 1
je 0x527ea4
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
add edx, 0x658
mov eax, dword [eax + 0x100]
add eax, 8
push eax
call fcn.00557bb0
add esp, 4
mov ecx, dword [esi + 0x10]
mov eax, 0xfffffff0
lock xadd dword [ecx], eax
and eax, 0xfffffff2
cmp eax, 0x12
jne 0x5275bc
mov byte [esi + 3], 1
mov dword [esi + 0x148], 0
movss dword [esi + 0x10], xmm0
call fcn.00719c10
movss xmm0, dword [esi + 0x10]
mov ebx, dword [ebp + 0x10]
movaps xmm2, xmm0
lea ecx, [esi + 0xc8]
cmpunordss xmm2, xmm0
movaps xmm1, xmm2
mov edi, dword [ebx + 0x100]
lea eax, [ebx + 0x88]
lea edx, [ebx + 0xb8]
movss xmm3, dword [edi + 0x74]
andps xmm1, xmm3
maxss xmm3, xmm0
xorps xmm0, xmm0
andnps xmm2, xmm3
orps xmm2, xmm1
movaps xmm1, xmm2
movaps xmmword [esi + 0x60], xmm2
push eax
call fcn.0054ba30
add esp, 4
movss xmm6, dword [esi + 0xcc]
movss xmm5, dword [ebx + 0x8c]
movss xmm0, dword [ebx + 0x94]
movss xmm4, dword [ebx + 0x9c]
movss xmm3, dword [ebx + 0xa4]
mov eax, dword [ebp + 0xc]
movaps xmm1, xmm6
minss xmm1, xmm5
cmpunordss xmm5, xmm5
movaps xmm2, xmm5
andnps xmm5, xmm1
movaps xmm1, xmm6
andps xmm2, xmm6
maxss xmm1, xmm0
cmpunordss xmm0, xmm0
orps xmm5, xmm2
movaps xmm2, xmm0
andnps xmm0, xmm1
movaps xmm1, xmm6
andps xmm2, xmm6
minss xmm1, xmm4
cmpunordss xmm4, xmm4
orps xmm0, xmm2
movaps xmm2, xmm4
andnps xmm4, xmm1
movaps xmm1, xmm6
andps xmm2, xmm6
maxss xmm1, xmm3
cmpunordss xmm3, xmm3
orps xmm4, xmm2
movaps xmm2, xmm3
andnps xmm3, xmm1
movaps xmm1, xmm6
andps xmm2, xmm6
orps xmm3, xmm2
movss xmm2, dword [ebx + 0xac]
minss xmm1, xmm2
cmpunordss xmm2, xmm2
movaps xmm7, xmm2
andnps xmm2, xmm1
movss xmm1, dword [ebx + 0xb4]
andps xmm7, xmm6
orps xmm2, xmm7
movss dword [esi + 0x10], xmm1
cmpunordss xmm1, xmm1
movaps xmm7, xmm1
andps xmm7, xmm6
maxss xmm6, dword [esi + 0x10]
andnps xmm1, xmm6
movss xmm6, dword [esi + 0xd4]
orps xmm1, xmm7
movaps xmm7, xmm6
minss xmm7, xmm5
cmpunordss xmm5, xmm5
movaps xmmword [esi + 0x10], xmm5
movaps xmmword [esi + 0xa0], xmm7
andps xmm5, xmm6
movaps xmm7, xmmword [esi + 0x10]
andnps xmm7, xmmword [esi + 0xa0]
movaps xmmword [esi + 0x10], xmm7
orps xmm5, xmmword [esi + 0x10]
movss dword [ebx + 0x8c], xmm5
movaps xmm5, xmm6
maxss xmm5, xmm0
cmpunordss xmm0, xmm0
movaps xmm7, xmm0
andps xmm0, xmm6
andnps xmm7, xmm5
orps xmm0, xmm7
movss dword [ebx + 0x94], xmm0
movaps xmm0, xmm6
minss xmm0, xmm4
cmpunordss xmm4, xmm4
movaps xmm5, xmm4
andps xmm4, xmm6
andnps xmm5, xmm0
movaps xmm0, xmm6
maxss xmm0, xmm3
cmpunordss xmm3, xmm3
orps xmm4, xmm5
movaps xmm5, xmm3
andps xmm3, xmm6
movss dword [ebx + 0x9c], xmm4
andnps xmm5, xmm0
movaps xmm0, xmm6
orps xmm3, xmm5
minss xmm0, xmm2
cmpunordss xmm2, xmm2
movss dword [ebx + 0xa4], xmm3
movaps xmm3, xmm2
andps xmm2, xmm6
andnps xmm3, xmm0
movaps xmm0, xmm6
maxss xmm0, xmm1
cmpunordss xmm1, xmm1
orps xmm2, xmm3
movaps xmm3, xmm1
andps xmm1, xmm6
movss dword [ebx + 0xac], xmm2
andnps xmm3, xmm0
orps xmm1, xmm3
movss dword [ebx + 0xb4], xmm1
movss xmm0, dword [edi + 0x3c]
movss xmm1, dword [edi + 0x84]
mov eax, dword [eax + 0x3c]
movaps xmmword [esi + 0x10], xmm0
movaps xmm0, xmmword [esi + 0x60]
cmp byte [eax], 0
movss dword [esi + 0x2c], xmm1
mov dword [esi + 0x148], 0
subss xmm0, xmm1
mulss xmm0, dword [0x725640]
movaps xmmword [esi + 0xa0], xmm0
je 0x527ce5
mov edi, dword [ebp + 0x10]
movaps xmm0, xmmword [esi + 0xa0]
mov ecx, edi
call fcn.00556230
mov eax, dword [ebp + 0xc]
movss xmm0, dword [esi + 0x2c]
lea ecx, [esi + 0xc8]
mov edx, edi
mov eax, dword [eax + 0x40]
movaps xmm1, xmm0
mov byte [esi + 3], 1
mov dword [esi + 0x40], eax
call fcn.00530440
mov ecx, dword [ebp + 0x10]
movsd xmm0, qword [esi + 0xd0]
movsd xmm1, qword [esi + 0xd8]
mov eax, dword [esi + 0x40]
movsd qword [esi + 0x78], xmm1
movsd qword [esi + 0x70], xmm0
movsd xmm0, qword [ecx + 0xd0]
movsd xmm1, qword [ecx + 0xd8]
lea edx, [ecx + 0xe0]
mov ebx, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [ecx + 0x100]
mov dword [esi + 4], edx
movsd qword [esi + 0xc0], xmm1
movsd qword [esi + 0xb8], xmm0
movss xmm0, dword [eax + 0x3c]
movss xmm1, dword [eax + 0x40]
mov eax, dword [ecx + 0xc0]
mov byte [esi + 3], 1
mov dword [esi + 8], eax
mov eax, dword [ecx + 0xc4]
mov dword [esi + 0x30], eax
movzx eax, byte [ecx + 0x108]
mov ecx, dword [ecx + 0xc8]
mov dword [esi + 0x120], ecx
lea ecx, [esi + 0xc8]
push eax
push 0x10001
lea eax, [esi + 0x70]
push eax
mov dword [esi + 0x54], edi
push edi
mov dword [esi + 0x50], ebx
push ebx
push dword [esi + 0x120]
push dword [esi + 0x30]
push dword [esi + 8]
lea eax, [esi + 0xb8]
push eax
call fcn.00519df0
add esp, 0x24
cmp byte [esi + 0x106], 0
je 0x5279d7
mov eax, dword [esi + 0x40]
mov edx, 8
xor byte [eax + 0x10], 1
mov eax, dword [esi + 4]
mov edi, dword [eax]
xor eax, eax
lock cmpxchg dword [edi + 8], edx
lea ecx, [edi + 8]
je 0x527927
mov dword [esi + 0x148], 3
mov dword [esi + 8], ecx
mov dword [esi + 0x30], edi
call fcn.007188f0
mov edi, dword [esi + 0x30]
mov ecx, dword [esi + 8]
mov dword [edi + 0x4a0], 2
mov eax, dword [edi + 0x480]
or eax, dword [edi + 0x484]
jne 0x527948
cmp dword [edi + 0x488], 0
je 0x5279bb
mov dword [edi + 0x484], 0
mov dword [edi + 0x480], 0
mov dword [edi + 0x488], 0
mov eax, dword [edi + 0x498]
test eax, eax
je 0x5279bb
mov dword [esi + 8], ecx
mov ecx, dword [edi + 0x490]
mov edx, dword [edi + 0x494]
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x7c], 0
mov dword [esi + 0x78], 0
mov dword [esi + 0x80], 0
lea edx, [esi + 0x70]
mov ecx, dword [edi + 0x49c]
mov dword [esi + 0x148], 4
push edx
push eax
call dword [ecx + 0x14]
add esp, 8
mov ecx, dword [esi + 8]
xor edx, edx
mov eax, 8
lock cmpxchg dword [ecx], edx
je 0x5279d7
mov dword [esi + 0x148], 3
call fcn.00719150
mov eax, dword [esi + 4]
mov edi, dword [eax]
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
test al, 8
jne 0x5279f3
mov edx, eax
add edx, 0x10
jb 0x5279f3
lock cmpxchg dword [ecx], edx
je 0x527a0e
mov dword [esi + 0x148], 3
mov dword [esi + 8], ecx
mov dword [esi + 0x30], edi
call fcn.00719890
mov edi, dword [esi + 0x30]
mov ecx, dword [esi + 8]
mov eax, 0xfffffff0
movzx edx, byte [edi + 0x218]
lock xadd dword [edi + 8], eax
and eax, 0xfffffff2
cmp eax, 0x12
jne 0x527a3d
mov dword [esi + 0x148], 3
mov byte [esi + 8], dl
call fcn.00719c10
movzx edx, byte [esi + 8]
test dl, dl
je 0x527a50
movss xmm0, dword [0x7255e0]
movss dword [esi + 8], xmm0
jmp 0x527a78
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x50]
movzx eax, byte [eax + 0x10]
mov dword [esi + 0x148], 3
push eax
push dword [esi + 0x54]
call fcn.0051cb20
add esp, 8
movss dword [esi + 8], xmm0
movzx edx, byte [esi + 0x100]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x100]
or dl, byte [esi + 0x101]
je 0x527ac4
cmp byte [esi + 0x117], 0
jne 0x527abc
mov dword [esi + 4], ecx
lea ecx, [esi + 0xc8]
mov dword [esi + 0x148], 3
call fcn.00530ba0
mov ecx, dword [esi + 4]
test al, al
je 0x527e7f
add ecx, 0x168
jmp 0x527aca
add ecx, 0xe4
movsd xmm0, qword [esi + 0xe0]
movsd xmm2, qword [esi + 0xe8]
movss xmm1, dword [ecx + 0x28]
mov dword [esi + 4], ecx
movaps xmmword [esi + 0x120], xmm0
movaps xmmword [esi + 0x30], xmm2
movaps xmmword [esi + 0x40], xmm1
movzx eax, byte [0x919aa5]
mov eax, dword [0x919820]
test eax, eax
jne 0x527b14
call dword [sym.imp.kernel32.dll_GetProcessHeap]
test eax, eax
je 0x527ebd
mov dword [0x919820], eax
push 0x18
push 0
push eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
test eax, eax
mov dword [esi + 0x148], 3
je 0x527ebd
movaps xmm3, xmmword [esi + 0x120]
movaps xmm2, xmmword [esi + 0x30]
movaps xmm1, xmmword [0x7255f0]
mov ebx, eax
mov eax, dword [ebp + 0x10]
movaps xmm0, xmm3
lea edi, [eax + 0xc0]
addps xmm0, xmm2
subps xmm2, xmm3
movaps xmm3, xmmword [esi + 0x40]
mulps xmm2, xmmword [0x7265e0]
mulps xmm0, xmm1
shufps xmm3, xmm3, 0
mulps xmm2, xmm1
movaps xmm1, xmm0
subps xmm1, xmm2
addps xmm2, xmm0
subps xmm1, xmm3
addps xmm3, xmm2
movss xmm2, dword [esi + 8]
movaps xmm0, xmm1
movlps qword [ebx], xmm1
movaps xmmword [esi + 0x30], xmm1
movss dword [ebx + 8], xmm3
movaps xmmword [esi + 0x40], xmm3
shufps xmm0, xmm1, 0x55
movss xmm1, dword [0x7255e0]
movss dword [ebx + 0xc], xmm0
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
movss dword [ebx + 0x14], xmm0
xorps xmm0, xmm0
subss xmm1, xmm2
mulss xmm0, xmm2
mulss xmm1, dword [0x7265f0]
addss xmm1, xmm0
sub esp, 8
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movsd qword [esi + 8], xmm0
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
add esp, 8
fstp dword [esi + 0x5c]
sub esp, 8
movsd xmm0, qword [esi + 8]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
add esp, 8
fstp dword [esi + 0x58]
lea edx, [esi + 0x70]
mov ecx, edi
movaps xmm0, xmmword [esi + 0x40]
mov eax, dword [esi + 4]
addps xmm0, xmmword [esi + 0x30]
mulps xmm0, xmmword [0x7255f0]
movss dword [ebx + 0x10], xmm0
movaps xmm1, xmm0
movaps xmm6, xmm0
movups xmm3, xmmword [ebx]
movss xmm2, dword [esi + 0x58]
movlhps xmm1, xmm0
movss xmm0, dword [esi + 0x5c]
subps xmm3, xmm1
shufps xmm2, xmm2, 0
shufps xmm0, xmm0, 0
movaps xmm4, xmm3
shufps xmm4, xmm3, 0xb1
mulps xmm3, xmm2
mulps xmm4, xmm0
movaps xmm5, xmm3
subps xmm5, xmm4
addps xmm3, xmm4
shufps xmm5, xmm3, 0xd8
shufps xmm5, xmm5, 0xd8
addps xmm5, xmm1
movups xmmword [ebx], xmm5
movsd xmm1, qword [ebx + 0x10]
subps xmm1, xmm6
mulps xmm2, xmm1
shufps xmm1, xmm1, 0xe1
mulps xmm1, xmm0
movaps xmm3, xmm2
subps xmm3, xmm1
addps xmm1, xmm2
shufps xmm1, xmm3, 1
shufps xmm1, xmm3, 0xe2
addps xmm1, xmm6
movlps qword [ebx + 0x10], xmm1
mov dword [esi + 0x70], ebx
mov dword [esi + 0x74], 3
mov dword [esi + 0x78], 3
mov eax, dword [eax + 0x1c]
mov dword [esi + 0x7c], eax
mov dword [esi + 0x84], 0
mov dword [esi + 0x80], 0
mov byte [esi + 0x88], 1
mov byte [esi + 0x9c], 6
call fcn.005606f0
mov ecx, dword [esi + 0xfc]
lock dec dword [ecx]
jne 0x527ce5
mov byte [esi + 3], 1
mov dword [esi + 0x148], 0
call fcn.00562540
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x38]
mov dword [esi + 0x100], eax
lea eax, [esi + 0x70]
movsd xmm0, qword [ecx + 0x30]
movsd qword [esi + 0xf8], xmm0
movsd xmm0, qword [ecx + 0x28]
movsd qword [esi + 0xf0], xmm0
movsd xmm0, qword [ecx + 0x20]
movsd qword [esi + 0xe8], xmm0
movsd xmm0, qword [ecx + 0x18]
movsd qword [esi + 0xe0], xmm0
movsd xmm0, qword [ecx + 0x10]
movsd qword [esi + 0xd8], xmm0
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
mov dword [esi + 0x70], 4
mov byte [esi + 3], 0
mov dword [esi + 0x148], 0
lea ecx, [esi + 0xc8]
movsd qword [esi + 0xc8], xmm0
movss xmm0, dword [0x7258a0]
movsd qword [esi + 0xd0], xmm1
push eax
push 0
call fcn.00558650
add esp, 8
mov ecx, eax
mov dword [esi + 0xb8], eax
mov eax, dword [ebp + 0xc]
mov byte [esi + 0xbc], dl
mov byte [esi + 0x40], dl
mov dword [esi + 4], ecx
mov eax, dword [eax + 0x3c]
cmp byte [eax], 0
jne 0x527dad
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x44]
cmp byte [eax], 0
je 0x527e65
movss xmm2, dword [esi + 0x2c]
movss xmm0, dword [ecx + 0x20]
movaps xmm1, xmmword [esi + 0x10]
addss xmm2, dword [esi + 0xa0]
subss xmm0, dword [ecx + 0x18]
addss xmm1, xmm2
addss xmm1, xmm1
mov ecx, dword [ebp + 0x10]
addss xmm1, xmm0
lea edx, [esi + 0xc8]
mov dword [esi + 0x148], 2
unpcklps xmm1, xmmword [esi + 0x60]
movsd xmm0, qword [ecx + 0x88]
addps xmm1, xmm0
movaps xmmword [esi + 0x60], xmm0
movlhps xmm0, xmm1
movaps xmmword [esi + 0x10], xmm1
movups xmmword [esi + 0xc8], xmm0
call fcn.0052f8d0
mov ecx, eax
mov eax, dword [ebp + 8]
movaps xmm0, xmmword [esi + 0x60]
movaps xmm1, xmmword [esi + 0x10]
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 4]
mov dword [eax + 0x24], edx
mov dword [eax + 0x28], ecx
movzx ecx, byte [esi + 0x40]
mov byte [eax + 0x2c], cl
mov ecx, dword [esi + 0x140]
movlps qword [eax], xmm0
movlps qword [eax + 8], xmm1
mov dword [eax + 0x10], 0x7fc00000
mov dword [eax + 0x14], 0x7fc00000
mov dword [eax + 0x18], 0x7fc00000
mov dword [eax + 0x1c], 0x7fc00000
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movss xmm1, dword [ecx + 0x20]
movaps xmm0, xmmword [esi + 0xa0]
subss xmm1, dword [ecx + 0x18]
addss xmm1, xmm0
jmp 0x527dd0
movzx eax, byte [esi + 0x104]
or al, byte [esi + 0x105]
jne 0x527e99
add ecx, 0x110
jmp 0x527aca
add ecx, 0x13c
jmp 0x527aca
mov ecx, str.No_fonts_available_until_first_call_to_Context::run__C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fegui_0.22.0_srccontext.rs
mov edx, 0x35
push 0x742b0c
call fcn.0070a3e0
add esp, 4
jmp 0x527ed6
mov ecx, 4
mov edx, 0x18
mov dword [esi + 0x148], 3
call fcn.00709d20
ud2