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

Disassembly:
mov ecx, dword [0x10180f98]
sub esp, 0x54
mov eax, dword [ecx + 0x3e28]
push ebx
push ebp
push esi
mov byte [eax + 0xa8], 1
push edi
mov edi, dword [ecx + 0x3e28]
cmp byte [edi + 0xab], 0
jne 0x100f020c
cmp dword [edi + 0xe0], 0
mov esi, dword [0x10180f98]
mov ebx, esi
mov eax, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov dword [esp + 0x30], eax
jg 0x100efaf1
push 0x703
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0_third_partyimgui_masterimguiimgui.h
push str.Size___0
call eax
mov esi, dword [0x10180f98]
add esp, 0xc
mov ecx, dword [edi + 0xe0]
mov eax, dword [edi + 0xe8]
push dword [eax + ecx*4 - 4]
push 0
push dword [esp + 0x70]
call fcn.100dc0c0
mov ebp, eax
add esp, 0xc
cmp dword [esi + 0x3e5c], ebp
mov esi, dword [esp + 0x68]
jne 0x100efb2b
push 0
push esi
push 0xb
push ebp
call fcn.100d5190
add esp, 0x10
push ecx
mov dword [esp], 0xbf800000
lea eax, [esp + 0x38]
push 1
push 0
push esi
push eax
call fcn.100d1a40
mov esi, dword [esp + 0x88]
add esp, 0x14
xorps xmm1, xmm1
movss xmm2, dword [esi + 4]
ucomiss xmm2, xmm1
movss dword [esp + 0x28], xmm2
lahf
test ah, 0x44
jp 0x100efb6f
movss xmm2, dword [esp + 0x38]
movss dword [esp + 0x28], xmm2
movss xmm0, dword [esi]
ucomiss xmm0, xmm1
movss dword [esp + 0x24], xmm0
lahf
test ah, 0x44
jp 0x100efb8e
movss xmm0, dword [esp + 0x34]
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x14], xmm0
lea eax, [esp + 0x14]
movss xmm0, dword [edi + 0xec]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [edi + 0xf0]
addss xmm0, dword [edi + 0x124]
push ecx
mov dword [esp], 0
push eax
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x34], xmm0
call fcn.100e1900
mov ecx, dword [esp + 0x78]
add esp, 8
movss xmm2, dword [esp + 0x1c]
mov edx, ecx
shr edx, 1
and dl, 1
mov dword [esp + 0x14], edx
je 0x100efbfc
movss xmm6, dword [edi + 0x1fc]
movss xmm1, dword [edi + 0x204]
jmp 0x100efc07
movss xmm1, dword [edi + 0x1f4]
movaps xmm6, xmm2
movss xmm0, dword [esi]
xorps xmm5, xmm5
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x100efc1f
test ecx, 0x1000000
je 0x100efc2f
movss xmm4, dword [esp + 0x34]
subss xmm1, xmm6
maxss xmm4, xmm1
jmp 0x100efc35
movss xmm4, dword [esp + 0x24]
movss xmm7, dword [esp + 0x2c]
addss xmm4, xmm6
movss dword [esp + 0x3c], xmm2
movaps xmm0, xmm7
movss dword [esp + 0x40], xmm7
movss dword [esp + 0x44], xmm6
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x1c], xmm4
movss dword [esp + 0x4c], xmm4
addss xmm0, dword [esp + 0x28]
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x50], xmm0
test ecx, 0x4000000
jne 0x100efcf8
test dl, dl
jne 0x100efc92
movss xmm5, dword [ebx + 0x37e4]
movss xmm3, dword [ebx + 0x37e8]
movaps xmm0, xmm5
mulss xmm0, dword [0x1011dc24]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x1011dc24]
movd xmm2, eax
cvttss2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm5, xmm2
subss xmm3, xmm0
subss xmm6, xmm2
subss xmm7, xmm0
addss xmm5, xmm4
addss xmm3, dword [esp + 0x2c]
movss dword [esp + 0x44], xmm6
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x4c], xmm5
movss dword [esp + 0x50], xmm3
movss xmm0, dword [edi + 0x20c]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [edi + 0x214]
movss dword [esp + 0x24], xmm0
test dl, dl
je 0x100efd30
mov eax, dword [edi + 0x1fc]
mov dword [edi + 0x20c], eax
mov eax, dword [edi + 0x204]
mov dword [edi + 0x214], eax
mov eax, ecx
shr eax, 3
and eax, 0xffffff01
mov dword [esp + 0x28], eax
movzx eax, al
shl eax, 2
push eax
push 0
lea eax, [esp + 0x4c]
push ebp
push eax
call fcn.100e14e0
add esp, 0x10
cmp byte [esp + 0x14], 0
je 0x100efd78
movss xmm0, dword [esp + 0x2c]
movss dword [edi + 0x20c], xmm0
movss xmm0, dword [esp + 0x24]
movss dword [edi + 0x214], xmm0
test al, al
je 0x100f020c
mov eax, dword [ebx + 0x4680]
shr eax, 2
and eax, 0xffffff01
cmp byte [esp + 0x28], 0
mov dword [esp + 0x24], eax
je 0x100efda7
test al, al
jne 0x100efda7
push 1
call fcn.100ce3a0
add esp, 4
cmp byte [esp + 0x14], 0
je 0x100efe82
cmp dword [edi + 0x18c], 0
je 0x100efdc5
call fcn.100e9170
jmp 0x100efe82
cmp dword [ebx + 0x49d0], 0
je 0x100efe82
mov eax, dword [0x10180f98]
mov esi, dword [eax + 0x3e28]
mov ecx, dword [eax + 0x49d0]
movups xmm0, xmmword [esi + 0x20c]
movups xmmword [ecx + 0x150], xmm0
mov eax, dword [esi + 0x260]
movups xmm0, xmmword [ecx + 0x130]
movss xmm4, dword [ecx + 0x130]
movss xmm3, dword [ecx + 0x134]
movss xmm2, dword [ecx + 0x138]
movss xmm1, dword [ecx + 0x13c]
movups xmmword [esi + 0x20c], xmm0
movss dword [esp + 0x54], xmm4
movss dword [esp + 0x58], xmm3
movss dword [esp + 0x5c], xmm2
movss dword [esp + 0x60], xmm1
movss dword [eax + 0x60], xmm4
movss dword [eax + 0x64], xmm3
movss dword [eax + 0x68], xmm2
movss dword [eax + 0x6c], xmm1
mov eax, dword [esi + 0x260]
movups xmm0, xmmword [esp + 0x54]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movups xmmword [eax + edx*8 - 0x10], xmm0
movzx eax, byte [ecx + 0x1cb]
mov ecx, dword [ecx + 0x174]
push eax
push dword [esi + 0x260]
call fcn.100f0ab0
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0x70]
mov eax, esi
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
or edx, 0x100000
test dword [esp + 0x70], 0x8000000
cmove edx, ecx
mov ecx, edx
or ecx, 0x10
test esi, 0x400000
cmove ecx, edx
mov edx, ecx
or edx, 0x80
test esi, 0x800000
cmove edx, ecx
mov ecx, edx
or ecx, 0x120
test al, 4
mov al, byte [esp + 0x6c]
cmove ecx, edx
mov byte [esp + 0x12], al
mov edx, esi
mov eax, ecx
or eax, 0x1000
and edx, 0x10
test edx, edx
mov dword [esp + 0x2c], edx
cmove eax, ecx
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x19]
push eax
lea eax, [esp + 0x50]
push ebp
push eax
call fcn.100d08a0
mov dl, al
add esp, 0x14
mov eax, esi
mov byte [esp + 0x10], dl
test eax, 0x200000
je 0x100eff41
mov esi, dword [ebx + 0x47c8]
test esi, esi
je 0x100eff41
mov ecx, dword [ebx + 0x47cc]
cmp ecx, dword [ebx + 0x467c]
jne 0x100eff41
cmp esi, ebp
jne 0x100eff41
mov dl, 1
mov byte [esp + 0x10], dl
mov byte [esp + 0x6c], dl
jmp 0x100eff5a
test dl, dl
jne 0x100eff5a
cmp byte [esp + 0x11], dl
je 0x100efffa
test eax, 0x2000000
je 0x100efffa
cmp byte [ebx + 0x47e7], 0
jne 0x100effed
cmp dword [ebx + 0x47a8], edi
jne 0x100effed
mov eax, dword [edi + 0x144]
cmp dword [ebx + 0x47e0], eax
jne 0x100effed
movss xmm1, dword [edi + 0xfc]
lea ecx, [esp + 0x54]
movss xmm0, dword [esp + 0x44]
movss xmm2, dword [edi + 0x100]
subss xmm0, xmm1
push ecx
push dword [ebx + 0x467c]
push eax
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x54]
subss xmm0, xmm2
push ebp
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x5c]
subss xmm0, xmm1
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esp + 0x60]
subss xmm0, xmm2
movss dword [esp + 0x70], xmm0
call fcn.100f0f70
mov dl, byte [esp + 0x20]
add esp, 0x10
mov byte [ebx + 0x47e6], 1
test dl, dl
je 0x100efffa
push ebp
call fcn.100e2240
add esp, 4
cmp dword [esp + 0x2c], 0
je 0x100f0006
call fcn.100f0e40
mov cl, byte [esp + 0x6c]
cmp cl, byte [esp + 0x12]
je 0x100f0017
or dword [ebx + 0x46a4], 8
mov al, byte [esp + 0x11]
test al, al
jne 0x100f0023
test cl, cl
je 0x100f0096
cmp byte [esp + 0x13], 0
je 0x100f0035
test al, al
je 0x100f0035
mov ecx, 0x1a
jmp 0x100f003f
xor ecx, ecx
test al, al
setne cl
add ecx, 0x18
mov eax, dword [0x10180f98]
shl ecx, 4
push ecx
mov dword [esp], 0
push 0
movups xmm0, xmmword [ecx + eax + 0x3860]
movups xmmword [esp + 0x5c], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [eax + 0x3798]
lea eax, [esp + 0x5c]
push eax
movss dword [esp + 0x6c], xmm0
call fcn.100d4190
add esp, 4
push eax
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
call fcn.100eb3c0
add esp, 0x1c
push 0xa
lea eax, [esp + 0x48]
push ebp
push eax
call fcn.100ebb40
add esp, 0xc
cmp byte [esp + 0x14], 0
je 0x100f019f
cmp dword [edi + 0x18c], 0
je 0x100f00c4
call fcn.100e86d0
jmp 0x100f019f
cmp dword [ebx + 0x49d0], 0
je 0x100f019f
mov eax, dword [0x10180f98]
mov esi, dword [eax + 0x49d0]
mov ecx, dword [eax + 0x3e28]
mov dword [esp + 0x2c], ecx
imul ebp, dword [esi + 0x5c], 0x68
add ebp, dword [esi + 0x10]
cmp ebp, dword [esi + 0x10]
jb 0x100f00f7
cmp ebp, dword [esi + 0x14]
jb 0x100f0111
push 0x267
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0_third_partyimgui_masterimguiimgui_internal.h
push str.p___Data__p___DataEnd
call dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
add esp, 0xc
movups xmm0, xmmword [esi + 0x150]
mov eax, dword [ecx + 0x260]
movss xmm4, dword [esi + 0x150]
movss xmm3, dword [esi + 0x154]
movss xmm2, dword [esi + 0x158]
movss xmm1, dword [esi + 0x15c]
movups xmmword [ecx + 0x20c], xmm0
movss dword [esp + 0x54], xmm4
movss dword [esp + 0x58], xmm3
movss dword [esp + 0x5c], xmm2
movss dword [esp + 0x60], xmm1
movss dword [eax + 0x60], xmm4
movss dword [eax + 0x64], xmm3
movss dword [eax + 0x68], xmm2
movss dword [eax + 0x6c], xmm1
mov eax, dword [ecx + 0x260]
movups xmm0, xmmword [esp + 0x54]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movups xmmword [eax + edx*8 - 0x10], xmm0
movzx eax, byte [ebp + 0x57]
push eax
push dword [ecx + 0x260]
mov ecx, dword [esi + 0x174]
call fcn.100f0ab0
lea eax, [esp + 0x44]
push eax
lea eax, [ebx + 0x3838]
push eax
lea eax, [esp + 0x3c]
push eax
push 0
push dword [esp + 0x78]
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.100ec590
add esp, 0x1c
cmp byte [esp + 0x10], 0
je 0x100f01ed
test dword [edi + 8], 0x4000000
je 0x100f01ed
test byte [esp + 0x70], 1
jne 0x100f01ed
test byte [ebx + 0x46a0], 0x20
jne 0x100f01ed
call fcn.100d3a40
cmp byte [esp + 0x28], 0
je 0x100f0200
cmp byte [esp + 0x24], 0
jne 0x100f0200
call fcn.100d6430
mov al, byte [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x54
ret