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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x78
push esi
mov esi, dword [0x1060b300]
push edi
mov byte [esp + 0x11], dl
mov dword [esp + 0x30], ecx
mov eax, dword [esi + 0x1b9c]
mov dword [esp + 0x18], esi
mov byte [eax + 0x8c], 1
mov edi, dword [esi + 0x1b9c]
cmp byte [edi + 0x8f], 0
jne 0x100ac30c
push ecx
push ecx
mov ecx, edi
call fcn.10078530
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x30]
mov ecx, eax
cmp eax, 0xffffffff
jae 0x100abbdb
mov dl, byte [ecx]
test dl, dl
je 0x100abbdb
cmp dl, 0x23
jne 0x100abbd5
cmp byte [ecx + 1], dl
je 0x100abbdb
inc ecx
cmp ecx, 0xffffffff
jb 0x100abbc5
mov edx, dword [0x1060b300]
xorps xmm7, xmm7
movss xmm0, dword [edx + 0x1930]
cmp eax, ecx
jne 0x100abbf5
xorps xmm1, xmm1
jmp 0x100abc35
push ecx
push ecx
push eax
push ecx
mov ecx, dword [edx + 0x192c]
lea eax, [esp + 0x50]
mov dword [esp], 0xbf800000
movaps xmm2, xmm0
push eax
call fcn.10099dd0
movss xmm0, dword [esp + 0x40]
xorps xmm7, xmm7
addss xmm0, dword [0x1041edbc]
cvttss2si eax, xmm0
movss xmm0, dword [esp + 0x44]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov ecx, dword [ebp + 0xc]
movss dword [esp + 0x5c], xmm0
movss dword [esp + 0x58], xmm1
movss xmm2, dword [ecx + 4]
ucomiss xmm2, xmm7
movss dword [esp + 0x34], xmm2
lahf
test ah, 0x44
jp 0x100abc61
movaps xmm2, xmm0
movss dword [esp + 0x34], xmm0
movss xmm6, dword [ecx]
ucomiss xmm6, xmm7
lahf
test ah, 0x44
jp 0x100abc71
movaps xmm6, xmm1
movss xmm0, dword [edi + 0xd0]
lea ecx, [esp + 0x38]
movss dword [esp + 0x2c], xmm0
xorps xmm1, xmm1
movss xmm0, dword [edi + 0xd4]
movss dword [esp + 0x64], xmm0
addss xmm0, dword [edi + 0x108]
movss dword [esp + 0x38], xmm6
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm0
call fcn.10082ee0
mov ecx, dword [ebp + 8]
mov edx, ecx
movss xmm2, dword [esp + 0x2c]
shr edx, 1
and dl, 1
mov dword [esp + 0x14], ecx
mov dword [esp + 0x38], edx
je 0x100abcdf
movss xmm5, dword [edi + 0x220]
movss xmm1, dword [edi + 0x228]
jmp 0x100abcea
movss xmm1, dword [edi + 0x218]
movaps xmm5, xmm2
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax]
ucomiss xmm0, xmm7
lahf
test ah, 0x44
jnp 0x100abd02
test ecx, 0x800000
je 0x100abd0f
movaps xmm6, xmm1
subss xmm6, xmm5
maxss xmm6, dword [esp + 0x58]
movss xmm4, dword [esp + 0x40]
addss xmm6, xmm5
movss dword [esp + 0x68], xmm2
movaps xmm0, xmm4
movss dword [esp + 0x6c], xmm4
movss dword [esp + 0x70], xmm5
movss dword [esp + 0x74], xmm4
movss dword [esp + 0x60], xmm6
movss dword [esp + 0x78], xmm6
addss xmm0, dword [esp + 0x34]
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x64], xmm0
movss dword [esp + 0x7c], xmm0
test ecx, 0x4000000
jne 0x100abdd2
test dl, dl
jne 0x100abd6c
movss xmm7, dword [esi + 0x1560]
movss xmm3, dword [esi + 0x1564]
movaps xmm0, xmm7
mulss xmm0, dword [0x1041ed50]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x1041ed50]
movd xmm2, eax
cvttss2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm7, xmm2
subss xmm3, xmm0
subss xmm5, xmm2
subss xmm4, xmm0
addss xmm7, xmm6
addss xmm3, dword [esp + 0x40]
movss dword [esp + 0x70], xmm5
movss dword [esp + 0x74], xmm4
movss dword [esp + 0x78], xmm7
movss dword [esp + 0x7c], xmm3
movss xmm0, dword [edi + 0x230]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [edi + 0x238]
movss dword [esp + 0x34], xmm0
test dl, dl
je 0x100abe0a
mov eax, dword [edi + 0x220]
mov dword [edi + 0x230], eax
mov eax, dword [edi + 0x228]
mov dword [edi + 0x238], eax
mov edx, dword [esp + 0x28]
mov eax, ecx
and eax, 8
push 0
mov dword [esp + 0x30], eax
push 0
je 0x100abe4b
mov esi, dword [esi + 0x1bbc]
mov eax, esi
mov ecx, dword [esp + 0x20]
or eax, 0x14
mov dword [ecx + 0x1bbc], eax
lea ecx, [esp + 0x78]
call fcn.10083000
mov cl, al
mov eax, dword [esp + 0x20]
mov dword [eax + 0x1bbc], esi
mov esi, eax
jmp 0x100abe56
lea ecx, [esp + 0x78]
call fcn.10083000
mov cl, al
mov eax, dword [esp + 0x40]
add esp, 8
test al, al
je 0x100abe7d
movss xmm0, dword [esp + 0x40]
movss dword [edi + 0x230], xmm0
movss xmm0, dword [esp + 0x34]
movss dword [edi + 0x238], xmm0
test cl, cl
je 0x100ac30c
test al, al
je 0x100abf5d
cmp dword [edi + 0x198], 0
je 0x100abea0
call fcn.100bac50
jmp 0x100abf5d
cmp dword [esi + 0x1ed4], 0
je 0x100abf5d
mov eax, dword [0x1060b300]
mov esi, dword [eax + 0x1b9c]
mov ecx, dword [eax + 0x1ed4]
movups xmm0, xmmword [esi + 0x230]
movups xmmword [ecx + 0x154], xmm0
mov eax, dword [esi + 0x284]
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 + 0x230], xmm0
movss dword [esp + 0x40], xmm4
movss dword [esp + 0x44], xmm3
movss dword [esp + 0x48], xmm2
movss dword [esp + 0x4c], 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 + 0x284]
movups xmm0, xmmword [esp + 0x40]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movups xmmword [eax + edx*8 - 0x10], xmm0
movzx eax, byte [ecx + 0x19f]
mov ecx, dword [ecx + 0x178]
push eax
push dword [esi + 0x284]
call fcn.10095ee0
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], 0x200000
cmove edx, ecx
mov ecx, edx
or ecx, 0x80
test esi, 0x400000
cmove ecx, edx
mov edx, ecx
or edx, 0x4000
cmp dword [esp + 0x2c], 0
cmove edx, ecx
mov ecx, edx
or ecx, 0x120
test al, 4
movzx eax, byte [esp + 0x11]
cmove ecx, edx
mov edx, esi
and edx, 0x10
mov esi, 0
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x40], edx
cmove esi, eax
mov eax, ecx
or eax, 0x1000
mov dword [esp + 0x34], esi
test edx, edx
mov edx, dword [esp + 0x28]
cmove eax, ecx
lea ecx, [esp + 0x70]
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x1a]
push eax
call fcn.1009d630
mov cl, byte [esp + 0x1e]
add esp, 0xc
mov byte [esp + 0x11], al
mov byte [esp + 0x12], cl
test al, al
jne 0x100ac01c
mov edx, dword [esp + 0x14]
test cl, cl
je 0x100ac0d6
test edx, 0x2000000
je 0x100ac0d6
mov esi, dword [esp + 0x18]
cmp byte [esi + 0x1d53], 0
jne 0x100ac0a5
cmp dword [esi + 0x1d00], edi
jne 0x100ac0a5
mov edx, dword [edi + 0x144]
cmp dword [esi + 0x1d48], edx
jne 0x100ac0a5
movss xmm4, dword [esp + 0x78]
lea eax, [esp + 0x18]
movss xmm3, dword [esp + 0x7c]
movss xmm1, dword [esp + 0x70]
movss xmm0, dword [esp + 0x74]
subss xmm4, dword [edi + 0xc]
subss xmm3, dword [edi + 0x10]
subss xmm1, dword [edi + 0xc]
subss xmm0, dword [edi + 0x10]
mov ecx, dword [esp + 0x28]
push eax
push dword [edi + 0x14c]
movss dword [esp + 0x20], xmm1
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x28], xmm4
movss dword [esp + 0x2c], xmm3
call fcn.100852c0
mov al, byte [esp + 0x19]
add esp, 8
mov byte [esi + 0x1d52], 1
test al, al
je 0x100ac0b2
mov ecx, dword [esp + 0x28]
call fcn.100788c0
mov edx, dword [esp + 0x14]
cmp dword [esp + 0x40], 0
je 0x100ac0c2
call fcn.1007cba0
mov al, byte [esp + 0x13]
test al, al
je 0x100ac0dc
test edx, 0x1000000
je 0x100ac0dc
mov cl, 1
jmp 0x100ac0ee
mov esi, dword [esp + 0x18]
jmp 0x100ac0b6
mov cl, byte [esp + 0x12]
test cl, cl
jne 0x100ac0ee
cmp byte [esp + 0x34], cl
je 0x100ac17c
test al, al
je 0x100ac100
test cl, cl
je 0x100ac100
mov dword [esp + 0x34], 0x1a
jmp 0x100ac10e
xor eax, eax
test cl, cl
setne al
add eax, 0x18
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x74]
movss xmm1, dword [0x1041edc4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x18], eax
mov eax, dword [0x1060b300]
push 0
push ecx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x24], edx
mov edx, dword [eax + 0x1b9c]
mov dword [esp], 0
call fcn.10076e10
mov ecx, dword [edx + 0x284]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.10094e60
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x70]
push 0xa
call fcn.10077b10
add esp, 4
cmp byte [esp + 0x38], 0
je 0x100ac28f
cmp dword [edi + 0x198], 0
je 0x100ac19a
call fcn.100bad00
jmp 0x100ac28f
cmp dword [esi + 0x1ed4], 0
je 0x100ac28f
mov eax, dword [0x1060b300]
mov edx, dword [eax + 0x1ed4]
mov ecx, dword [eax + 0x1b9c]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], edx
imul ecx, dword [edx + 0x5c], 0x68
add ecx, dword [edx + 0x10]
mov dword [esp + 0x40], ecx
cmp ecx, dword [edx + 0x10]
jb 0x100ac1d5
cmp ecx, dword [edx + 0x14]
jb 0x100ac1f5
push 0x238
push str.C:Users_voidDocumentsGitHubecstasy_v6_solutionimguiimgui_internal.h
push str.p___Data__p___DataEnd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [esp + 0x4c]
add esp, 0xc
mov edx, dword [esp + 0x34]
movss xmm4, dword [edx + 0x154]
movss xmm3, dword [edx + 0x158]
movss xmm2, dword [edx + 0x15c]
movss xmm1, dword [edx + 0x160]
movups xmm0, xmmword [edx + 0x154]
mov edx, dword [esp + 0x38]
movss dword [esp + 0x40], xmm4
movss dword [esp + 0x44], xmm3
movss dword [esp + 0x48], xmm2
mov eax, dword [edx + 0x284]
movups xmmword [edx + 0x230], xmm0
movss dword [esp + 0x4c], xmm1
movss dword [eax + 0x60], xmm4
movss dword [eax + 0x64], xmm3
movss dword [eax + 0x68], xmm2
movss dword [eax + 0x6c], xmm1
mov eax, dword [edx + 0x284]
movups xmm0, xmmword [esp + 0x40]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add edx, edx
movups xmmword [eax + edx*8 - 0x10], xmm0
movzx eax, byte [ecx + 0x57]
mov ecx, dword [esp + 0x38]
push eax
push dword [ecx + 0x284]
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + 0x178]
call fcn.10095ee0
cmp dword [esp + 0x2c], 0
je 0x100ac2a3
lea edx, [esi + 0x15ec]
xor ecx, ecx
call fcn.10077090
mov ecx, dword [esp + 0x30]
lea eax, [esp + 0x70]
push eax
lea eax, [esi + 0x15b4]
push eax
lea eax, [esp + 0x60]
push eax
push 0
push ecx
lea edx, [esp + 0x74]
lea ecx, [esp + 0x7c]
call fcn.10077870
add esp, 0x14
cmp dword [esp + 0x2c], 0
je 0x100ac2dc
mov ecx, 1
call fcn.100770e0
mov al, byte [esp + 0x11]
test al, al
je 0x100ac30e
test dword [edi + 8], 0x4000000
je 0x100ac30e
test byte [esp + 0x14], 1
jne 0x100ac30e
test byte [esi + 0x1bbc], 0x20
jne 0x100ac30e
call fcn.100847a0
mov al, byte [esp + 0x11]
pop edi
pop esi
mov esp, ebp
pop ebp
ret
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
ret