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

Disassembly:
mov ecx, dword [0x1015fb6c]
sub esp, 0x64
mov eax, dword [ecx + 0x1b94]
push ebx
push ebp
push esi
mov byte [eax + 0x8c], 1
push edi
mov edi, dword [ecx + 0x1b94]
cmp byte [edi + 0x8f], 0
jne 0x100de2ce
cmp dword [edi + 0xc4], 0
mov esi, dword [0x1015fb6c]
mov ebx, esi
mov eax, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov dword [esp + 0x40], eax
jg 0x100ddb81
push 0x6ba
push str.C:UsersFrank.cargo_registry_srcgithub.com_1ecc6299db9ec823imgui_sys_0.8.2_third_partyimguiimgui.h
push str.Size___0
call eax
mov esi, dword [0x1015fb6c]
add esp, 0xc
mov ecx, dword [edi + 0xc4]
mov eax, dword [edi + 0xcc]
push dword [eax + ecx*4 - 4]
mov eax, dword [esp + 0x7c]
push 0
push eax
call fcn.100cceb0
mov ebp, eax
add esp, 0xc
cmp dword [esi + 0x1bc8], ebp
jne 0x100ddbb0
mov dword [esi + 0x1bcc], ebp
cmp dword [esi + 0x1c04], ebp
jne 0x100ddbbf
mov byte [esi + 0x1c08], 1
push ecx
mov dword [esp], 0xbf800000
lea eax, [esp + 0x48]
push 1
push 0
push dword [esp + 0x84]
push eax
call fcn.100c3f50
mov esi, dword [esp + 0x98]
add esp, 0x14
xorps xmm1, xmm1
movss xmm2, dword [esi + 4]
ucomiss xmm2, xmm1
movss dword [esp + 0x2c], xmm2
lahf
test ah, 0x44
jp 0x100ddc09
movss xmm2, dword [esp + 0x48]
movss dword [esp + 0x2c], xmm2
movss xmm0, dword [esi]
ucomiss xmm0, xmm1
movss dword [esp + 0x28], xmm0
lahf
test ah, 0x44
jp 0x100ddc28
movss xmm0, dword [esp + 0x44]
movss dword [esp + 0x28], xmm0
movss dword [esp + 0x18], xmm0
lea eax, [esp + 0x18]
movss xmm0, dword [edi + 0xd0]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [edi + 0xd4]
movss dword [esp + 0x34], xmm0
addss xmm0, dword [edi + 0x108]
push ecx
mov dword [esp], 0
push eax
movss dword [esp + 0x24], xmm2
movss dword [esp + 0x38], xmm0
call fcn.100d1db0
mov ecx, dword [esp + 0x88]
add esp, 8
movss xmm2, dword [esp + 0x20]
mov edx, ecx
shr edx, 1
and dl, 1
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
je 0x100ddca3
movss xmm7, dword [edi + 0x1f0]
movss xmm1, dword [edi + 0x1f8]
jmp 0x100ddcae
movss xmm1, dword [edi + 0x1e8]
movaps xmm7, xmm2
movss xmm0, dword [esi]
xorps xmm5, xmm5
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x100ddcc6
test ecx, 0x1000000
je 0x100ddcd6
movss xmm4, dword [esp + 0x44]
subss xmm1, xmm7
maxss xmm4, xmm1
jmp 0x100ddcdc
movss xmm4, dword [esp + 0x28]
movss xmm6, dword [esp + 0x30]
addss xmm4, xmm7
movss dword [esp + 0x4c], xmm2
movaps xmm0, xmm6
movss dword [esp + 0x50], xmm6
movss dword [esp + 0x54], xmm7
movss dword [esp + 0x58], xmm6
movss dword [esp + 0x20], xmm4
movss dword [esp + 0x5c], xmm4
addss xmm0, dword [esp + 0x2c]
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x60], xmm0
test ecx, 0x8000000
jne 0x100ddd9f
test dl, dl
jne 0x100ddd39
movss xmm5, dword [ebx + 0x155c]
movss xmm3, dword [ebx + 0x1560]
movaps xmm0, xmm5
mulss xmm0, dword [0x1011d19c]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x1011d19c]
movd xmm2, eax
cvttss2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm5, xmm2
subss xmm3, xmm0
subss xmm7, xmm2
subss xmm6, xmm0
addss xmm5, xmm4
addss xmm3, dword [esp + 0x30]
movss dword [esp + 0x54], xmm7
movss dword [esp + 0x58], xmm6
movss dword [esp + 0x5c], xmm5
movss dword [esp + 0x60], xmm3
movss xmm0, dword [edi + 0x200]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [edi + 0x208]
movss dword [esp + 0x28], xmm0
test dl, dl
je 0x100dddd7
mov eax, dword [edi + 0x1f0]
mov dword [edi + 0x200], eax
mov eax, dword [edi + 0x1f8]
mov dword [edi + 0x208], eax
mov eax, ecx
shr eax, 3
push 0
and al, 1
push 0
mov dword [esp + 0x34], eax
push ebp
je 0x100dde0c
mov esi, dword [ebx + 0x1c18]
mov eax, esi
or eax, 4
mov dword [ebx + 0x1c18], eax
lea eax, [esp + 0x60]
push eax
call fcn.100d1930
mov dword [ebx + 0x1c18], esi
jmp 0x100dde16
lea eax, [esp + 0x60]
push eax
call fcn.100d1930
add esp, 0x10
cmp byte [esp + 0x18], 0
je 0x100dde3c
movss xmm0, dword [esp + 0x30]
movss dword [edi + 0x200], xmm0
movss xmm0, dword [esp + 0x28]
movss dword [edi + 0x208], xmm0
test al, al
je 0x100de2ce
mov eax, dword [ebx + 0x1c18]
shr eax, 2
and eax, 0xffffff01
cmp byte [esp + 0x2c], 0
mov dword [esp + 0x28], eax
je 0x100dde6b
test al, al
jne 0x100dde6b
push 1
call fcn.100c1f40
add esp, 4
cmp byte [esp + 0x18], 0
je 0x100ddf46
cmp dword [edi + 0x168], 0
je 0x100dde89
call fcn.100d8aa0
jmp 0x100ddf46
cmp dword [ebx + 0x1efc], 0
je 0x100ddf46
mov eax, dword [0x1015fb6c]
mov esi, dword [eax + 0x1b94]
mov ecx, dword [eax + 0x1efc]
movups xmm0, xmmword [esi + 0x200]
movups xmmword [ecx + 0x154], xmm0
mov eax, dword [esi + 0x254]
movups xmm0, xmmword [ecx + 0x134]
movss xmm4, dword [ecx + 0x134]
movss xmm3, dword [ecx + 0x138]
movss xmm2, dword [ecx + 0x13c]
movss xmm1, dword [ecx + 0x140]
movups xmmword [esi + 0x200], xmm0
movss dword [esp + 0x30], xmm4
movss dword [esp + 0x34], xmm3
movss dword [esp + 0x38], xmm2
movss dword [esp + 0x3c], 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 + 0x254]
movups xmm0, xmmword [esp + 0x30]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movups xmmword [eax + edx*8 - 0x10], xmm0
movzx eax, byte [ecx + 0x1b7]
mov ecx, dword [ecx + 0x178]
push eax
push dword [esi + 0x254]
call fcn.100de820
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x14]
mov eax, esi
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
or edx, 0x10
test dword [esp + 0x14], 0x400000
cmove edx, ecx
mov ecx, edx
or ecx, 0x80
test esi, 0x800000
cmove ecx, edx
mov edx, ecx
or edx, 0x120
test al, 4
mov al, byte [esp + 0x7c]
cmove edx, ecx
mov byte [esp + 0x12], al
mov ecx, esi
mov eax, edx
or eax, 0x1000
and ecx, 0x10
test ecx, ecx
mov dword [esp + 0x30], ecx
cmove eax, edx
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x19]
push eax
lea eax, [esp + 0x60]
push ebp
push eax
call fcn.100c31a0
mov dl, byte [esp + 0x25]
mov dh, al
mov eax, esi
mov byte [esp + 0x24], dh
add esp, 0x14
mov byte [esp + 0x11], dl
test eax, 0x200000
je 0x100ddffc
mov esi, dword [ebx + 0x1d48]
test esi, esi
je 0x100ddffc
mov ecx, dword [ebx + 0x1d4c]
cmp ecx, dword [edi + 0x124]
jne 0x100ddffc
cmp esi, ebp
jne 0x100ddffc
mov dh, 1
mov byte [esp + 0x10], dh
mov byte [esp + 0x7c], dh
jmp 0x100de013
test dh, dh
jne 0x100de013
test dl, dl
je 0x100de0a6
test eax, 0x4000000
je 0x100de0a6
cmp byte [ebx + 0x1d7b], 0
jne 0x100de099
cmp dword [ebx + 0x1d28], edi
jne 0x100de099
mov eax, dword [edi + 0x11c]
cmp dword [ebx + 0x1d70], eax
jne 0x100de099
movss xmm4, dword [esp + 0x5c]
lea ecx, [esp + 0x64]
movss xmm3, dword [esp + 0x60]
movss xmm1, dword [esp + 0x54]
movss xmm0, dword [esp + 0x58]
subss xmm4, dword [edi + 0xc]
subss xmm3, dword [edi + 0x10]
subss xmm1, dword [edi + 0xc]
subss xmm0, dword [edi + 0x10]
push ecx
push dword [edi + 0x124]
movss dword [esp + 0x74], xmm4
push eax
push ebp
movss dword [esp + 0x74], xmm1
movss dword [esp + 0x78], xmm0
movss dword [esp + 0x80], xmm3
call fcn.100debf0
mov dh, byte [esp + 0x20]
add esp, 0x10
mov byte [ebx + 0x1d7a], 1
test dh, dh
je 0x100de0a6
push ebp
call fcn.100d2780
add esp, 4
cmp dword [esp + 0x30], 0
je 0x100de0b2
call fcn.100debc0
mov cl, byte [esp + 0x7c]
cmp cl, byte [esp + 0x12]
je 0x100de0c3
or dword [ebx + 0x1c38], 8
mov dl, byte [esp + 0x13]
test dl, dl
je 0x100de0d9
test dword [esp + 0x14], 0x2000000
je 0x100de0d9
mov al, 1
jmp 0x100de0e5
mov al, byte [esp + 0x11]
test al, al
jne 0x100de0e5
test cl, cl
je 0x100de155
test dl, dl
je 0x100de0f4
test al, al
je 0x100de0f4
mov ecx, 0x1a
jmp 0x100de0fe
xor ecx, ecx
test al, al
setne cl
add ecx, 0x18
mov eax, dword [0x1015fb6c]
shl ecx, 4
push ecx
mov dword [esp], 0
push 0
movups xmm0, xmmword [ecx + eax + 0x15d8]
movups xmmword [esp + 0x6c], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [eax + 0x1510]
lea eax, [esp + 0x6c]
push eax
movss dword [esp + 0x7c], xmm0
call fcn.100c6590
add esp, 4
push eax
push dword [esp + 0x6c]
push dword [esp + 0x6c]
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.100da1e0
add esp, 0x1c
push 0xa
lea eax, [esp + 0x58]
push ebp
push eax
call fcn.100da840
add esp, 0xc
cmp byte [esp + 0x18], 0
je 0x100de25e
cmp dword [edi + 0x168], 0
je 0x100de183
call fcn.100d8100
jmp 0x100de25e
cmp dword [ebx + 0x1efc], 0
je 0x100de25e
mov eax, dword [0x1015fb6c]
mov esi, dword [eax + 0x1efc]
mov ecx, dword [eax + 0x1b94]
mov dword [esp + 0x30], ecx
imul ebp, dword [esi + 0x5c], 0x68
add ebp, dword [esi + 0x10]
cmp ebp, dword [esi + 0x10]
jb 0x100de1b6
cmp ebp, dword [esi + 0x14]
jb 0x100de1d0
push 0x242
push str.C:UsersFrank.cargo_registry_srcgithub.com_1ecc6299db9ec823imgui_sys_0.8.2_third_partyimguiimgui_internal.h
push str.p___Data__p___DataEnd
call dword [esp + 0x4c]
mov ecx, dword [esp + 0x3c]
add esp, 0xc
movups xmm0, xmmword [esi + 0x154]
mov eax, dword [ecx + 0x254]
movss xmm4, dword [esi + 0x154]
movss xmm3, dword [esi + 0x158]
movss xmm2, dword [esi + 0x15c]
movss xmm1, dword [esi + 0x160]
movups xmmword [ecx + 0x200], xmm0
movss dword [esp + 0x64], xmm4
movss dword [esp + 0x68], xmm3
movss dword [esp + 0x6c], xmm2
movss dword [esp + 0x70], 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 + 0x254]
movups xmm0, xmmword [esp + 0x64]
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 + 0x254]
mov ecx, dword [esi + 0x178]
call fcn.100de820
lea eax, [esp + 0x54]
push eax
lea eax, [ebx + 0x15b0]
push eax
lea eax, [esp + 0x4c]
push eax
push 0
push dword [esp + 0x88]
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x64]
push eax
call fcn.100db280
add esp, 0x1c
cmp byte [esp + 0x10], 0
je 0x100de2af
test dword [edi + 8], 0x4000000
je 0x100de2af
test byte [esp + 0x14], 1
jne 0x100de2af
test byte [ebx + 0x1c34], 0x20
jne 0x100de2af
call fcn.100c5e90
cmp byte [esp + 0x2c], 0
je 0x100de2c2
cmp byte [esp + 0x28], 0
jne 0x100de2c2
call fcn.100c8240
mov al, byte [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x64
ret