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

Disassembly:
sub esp, 0x68
push esi
mov esi, dword [0x10180f98]
mov dword [esp + 0x18], esi
mov eax, dword [esi + 0x3e28]
mov dword [esp + 0x10], eax
cmp byte [eax + 0xab], 0
jne 0x100f83a7
push ebx
mov ebx, dword [esi + 0x49d0]
push ebp
mov ebp, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
test ebx, ebx
jne 0x100f794b
push 0xb53
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.table___0___Need_to_call_TableHeader___after_BeginTable____
call ebp
add esp, 0xc
cmp dword [ebx + 0x5c], 0xffffffff
jne 0x100f7965
push 0xb54
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.table__CurrentColumn____1
call ebp
add esp, 0xc
mov ecx, dword [ebx + 0x5c]
push edi
imul edi, ecx, 0x68
mov dword [esp + 0x14], ecx
add edi, dword [ebx + 0x10]
cmp edi, dword [ebx + 0x10]
jb 0x100f797d
cmp edi, dword [ebx + 0x14]
jb 0x100f7991
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 ebp
add esp, 0xc
mov eax, dword [esp + 0x7c]
mov edx, 0x1014854c
test eax, eax
cmovne edx, eax
mov ebp, edx
mov dword [esp + 0x40], edx
cmp ebp, 0xffffffff
jae 0x100f79c7
nop word [eax + eax]
mov cl, byte [ebp]
test cl, cl
je 0x100f79c7
cmp cl, 0x23
jne 0x100f79c1
cmp byte [ebp + 1], cl
je 0x100f79c7
inc ebp
cmp ebp, 0xffffffff
jb 0x100f79b0
push ecx
mov dword [esp], 0xbf800000
lea eax, [esp + 0x64]
push 1
push ebp
push edx
push eax
call fcn.100d1a40
mov eax, dword [esp + 0x30]
add esp, 0x14
imul ecx, dword [esp + 0x14], 0x68
movss xmm0, dword [eax + 0xec]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [eax + 0xf0]
movss dword [esp + 0x5c], xmm0
add ecx, dword [ebx + 0x10]
mov dword [esp + 0x44], ecx
cmp ecx, dword [ebx + 0x10]
jb 0x100f7a16
cmp ecx, dword [ebx + 0x14]
jb 0x100f7a32
push 0x268
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 [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [esp + 0x50]
add esp, 0xc
movss xmm0, dword [ecx + 8]
xor eax, eax
maxss xmm0, dword [ebx + 0xf0]
movss xmm1, dword [ebx + 0xa8]
xorps xmm2, xmm2
addss xmm1, xmm1
movss dword [esp + 0x38], xmm2
movss dword [esp + 0x18], xmm0
movss xmm0, dword [ebx + 0x64]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [ecx + 0xc]
minss xmm0, dword [ebx + 0xf8]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [ebx + 0x68]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [ebx + 0x6c]
subss xmm0, xmm1
mov byte [esp + 0x28], 0
movss xmm1, dword [esp + 0x64]
mov word [esp + 0x29], ax
mov byte [esp + 0x2b], al
test byte [ebx + 4], 8
maxss xmm1, xmm0
xorps xmm0, xmm0
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x44], xmm1
je 0x100f7b7a
test dword [edi], 0x200
jne 0x100f7b7a
movss xmm0, dword [esi + 0x3bb4]
mulss xmm0, dword [0x101516c4]
addss xmm0, dword [esi + 0x37d4]
cvttss2si eax, xmm0
movd xmm1, eax
mov al, byte [edi + 0x56]
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x34], xmm1
test al, al
jle 0x100f7b7a
movsx eax, al
inc eax
push eax
push 0x10147e98
lea eax, [esp + 0x30]
push 4
push eax
call fcn.100dbff0
mov ecx, dword [0x10180f98]
lea eax, [esp + 0x38]
add esp, 0x10
movss xmm0, dword [ecx + 0x3bb4]
mov ecx, dword [ecx + 0x3bb0]
push 0
push 0
push eax
sub esp, 0xc
lea eax, [esp + 0x50]
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100d1b10
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [0x101516ec]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esi + 0x37ec]
movss dword [esp + 0x38], xmm2
movss xmm1, dword [esp + 0x60]
addss xmm1, dword [esp + 0x58]
movss xmm0, dword [edi + 0x48]
maxss xmm0, dword [edi + 0x38]
addss xmm1, xmm2
movss dword [edi + 0x48], xmm0
movss xmm0, dword [edi + 0x4c]
addss xmm1, dword [esp + 0x34]
maxss xmm0, xmm1
movss dword [edi + 0x4c], xmm0
cmp byte [ebx + 0x1d2], 0
je 0x100f7bd2
movsx eax, byte [ebx + 0x1c4]
cmp eax, dword [esp + 0x14]
jne 0x100f7bd2
mov ax, word [ebx + 0x62]
mov byte [esp + 0x10], 1
cmp ax, word [ebx + 0x60]
je 0x100f7bd7
mov byte [esp + 0x10], 0
mov eax, dword [esp + 0x1c]
cmp dword [eax + 0xe0], 0
jg 0x100f7c00
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 dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [esp + 0x28]
add esp, 0xc
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
push 0
push dword [esp + 0x48]
call fcn.100dc0c0
mov ecx, dword [0x10180f98]
add esp, 0xc
mov dword [esp + 0x30], eax
cmp dword [ecx + 0x3e5c], eax
jne 0x100f7c41
push 0
push dword [esp + 0x44]
push 0xb
push eax
call fcn.100d5190
add esp, 0x10
movss xmm2, dword [esp + 0x2c]
lea eax, [esp + 0x48]
movss xmm3, dword [esp + 0x44]
movss xmm0, dword [esi + 0x37f8]
movss xmm1, dword [esp + 0x18]
addss xmm0, xmm0
movss dword [esp + 0x6c], xmm2
addss xmm2, xmm3
movss dword [esp + 0x68], xmm1
movss xmm1, dword [esp + 0x20]
movss dword [esp + 0x70], xmm1
movss xmm1, dword [esp + 0x48]
addss xmm0, xmm2
mov dword [esp + 0x48], 0
push ecx
mov dword [esp], 0xbf800000
push eax
movss dword [esp + 0x54], xmm3
maxss xmm1, xmm0
movss dword [esp + 0x7c], xmm1
call fcn.100e1900
push 0
push 0
push dword [esp + 0x40]
lea eax, [esp + 0x7c]
push eax
call fcn.100e14e0
add esp, 0x18
test al, al
je 0x100f83a4
push 0x1000
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x1a]
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0x78]
push eax
call fcn.100d08a0
mov byte [esp + 0x27], al
add esp, 0x14
mov eax, dword [esp + 0x30]
cmp dword [esi + 0x3e74], eax
je 0x100f7d01
call fcn.100f0e40
cmp byte [esp + 0x11], 0
jne 0x100f7d51
mov cl, byte [esp + 0x12]
test cl, cl
jne 0x100f7d45
cmp byte [esp + 0x10], cl
jne 0x100f7d45
test byte [ebx + 0x78], 1
jne 0x100f7e31
push dword [ebx + 0x5c]
push ecx
mov dword [esp], 0x3f800000
push 0x2a
call fcn.100d8cc0
add esp, 8
push eax
push 3
call fcn.100f98e0
add esp, 0xc
jmp 0x100f7e31
xor eax, eax
test cl, cl
setne al
add eax, 0x18
jmp 0x100f7d56
mov eax, 0x1a
mov esi, dword [0x10180f98]
add eax, eax
movups xmm0, xmmword [esi + eax*8 + 0x3860]
mov eax, dword [ebx + 0x5c]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x48]
movups xmmword [esp + 0x48], xmm0
push eax
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [esi + 0x3798]
movss dword [esp + 0x58], xmm0
call fcn.100d4190
mov esi, dword [esi + 0x49d0]
xor ecx, ecx
add esp, 4
cmp eax, 0x1000000
cmovne ecx, eax
movss xmm0, dword [esi + 0x64]
comiss xmm0, dword [esi + 0x10c]
mov dword [esp + 0x48], ecx
ja 0x100f7e2d
mov eax, dword [esp + 0x2c]
cmp eax, 0xffffffff
jne 0x100f7dc3
mov eax, dword [esi + 0x5c]
mov dword [esp + 0x2c], eax
xor edx, edx
xor ecx, ecx
bts edx, eax
cmp eax, 0x20
cmovae ecx, edx
xor edx, ecx
cmp eax, 0x40
cmovae ecx, edx
and edx, dword [esi + 0x38]
and ecx, dword [esi + 0x3c]
or edx, ecx
je 0x100f7e2d
mov al, byte [esi + 0x1c9]
test al, al
js 0x100f7e08
movsx eax, al
lea ecx, [esi + 0x20]
push eax
call fcn.100c8290
movsx eax, byte [eax + 4]
cmp eax, dword [esp + 0x2c]
je 0x100f7e10
mov al, byte [esi + 0x1c9]
inc al
mov byte [esi + 0x1c9], al
movsx eax, byte [esi + 0x1c9]
lea ecx, [esi + 0x20]
push eax
call fcn.100c8290
mov ecx, dword [esp + 0x48]
mov dword [eax], ecx
mov ecx, dword [esp + 0x2c]
mov byte [eax + 4], cl
mov esi, dword [esp + 0x24]
push 0xa
push dword [esp + 0x34]
lea eax, [esp + 0x70]
push eax
call fcn.100ebb40
mov al, byte [esp + 0x1d]
add esp, 0xc
mov edx, dword [esp + 0x14]
test al, al
je 0x100f7e56
mov byte [ebx + 0x1bd], dl
movss xmm1, dword [esi + 0x37e8]
mov ecx, dword [esp + 0x1c]
mulss xmm1, dword [0x1011dc24]
movss xmm0, dword [ecx + 0xf0]
subss xmm0, xmm1
movss dword [ecx + 0xf0], xmm0
test al, al
je 0x100f7fb1
test byte [ebx + 4], 2
je 0x100f7fb1
mov eax, dword [0x10180f98]
cmp byte [eax + 0xdc0], 0
je 0x100f7fb1
movss xmm1, dword [eax + 0x30]
movss xmm0, dword [eax + 0x3750]
mulss xmm1, xmm1
comiss xmm0, xmm1
setae al
test al, al
je 0x100f7fb1
cmp byte [esi + 0x4930], 0
jne 0x100f7fb1
mov ax, word [ebx + 0x60]
xorps xmm0, xmm0
mov byte [ebx + 0x1be], dl
mov word [ebx + 0x62], ax
comiss xmm0, dword [esi + 0xb4]
jbe 0x100f7f44
movss xmm0, dword [esp + 0x18]
comiss xmm0, dword [esi + 0xdb8]
jbe 0x100f7f44
mov al, byte [edi + 0x54]
cmp al, 0xff
je 0x100f7f44
movsx eax, al
lea ecx, [ebx + 0x10]
push eax
call fcn.100c82d0
mov dword [esp + 0x48], eax
test eax, eax
je 0x100f7f44
mov ecx, dword [edi]
or ecx, dword [eax]
test cl, 0x40
jne 0x100f7f44
mov cl, byte [ebx + 0x1c7]
xor edx, edx
cmp byte [edi + 0x53], cl
mov esi, dword [esp + 0x48]
setl dl
xor eax, eax
cmp byte [esi + 0x53], cl
mov esi, dword [esp + 0x24]
setl al
cmp edx, eax
jne 0x100f7f44
mov byte [ebx + 0x1bf], 0xff
movss xmm0, dword [esi + 0xb4]
comiss xmm0, dword [0x10151668]
jbe 0x100f7fb1
movss xmm0, dword [esi + 0xdb8]
comiss xmm0, dword [esp + 0x20]
jbe 0x100f7fb1
mov al, byte [edi + 0x55]
cmp al, 0xff
je 0x100f7fb1
movsx eax, al
lea ecx, [ebx + 0x10]
push eax
call fcn.100c82d0
mov dword [esp + 0x48], eax
test eax, eax
je 0x100f7fb1
mov ecx, dword [edi]
or ecx, dword [eax]
test cl, 0x40
jne 0x100f7fb1
mov cl, byte [ebx + 0x1c7]
xor edx, edx
cmp byte [edi + 0x53], cl
mov esi, dword [esp + 0x48]
setl dl
xor eax, eax
cmp byte [esi + 0x53], cl
mov esi, dword [esp + 0x24]
setl al
cmp edx, eax
jne 0x100f7fb1
mov byte [ebx + 0x1bf], 1
test byte [ebx + 4], 8
movss xmm0, dword [esp + 0x20]
subss xmm0, dword [esp + 0x34]
subss xmm0, dword [esp + 0x38]
movss dword [esp + 0x20], xmm0
je 0x100f81dc
test dword [edi], 0x200
jne 0x100f81dc
mov al, byte [edi + 0x56]
cmp al, 0xff
je 0x100f80c4
movss xmm1, dword [esp + 0x18]
maxss xmm1, xmm0
movss xmm0, dword [esp + 0x5c]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x18], xmm1
test al, al
jle 0x100f8073
push ecx
mov dword [esp], 0x3f333333
push 0
call fcn.100d8cc0
push eax
push 0
call fcn.100e95a0
movss xmm0, dword [esp + 0x28]
lea eax, [esp + 0x38]
addss xmm0, dword [esi + 0x37ec]
push 1
push 0
push eax
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esp + 0x50]
movss dword [esp + 0x68], xmm0
push dword [esp + 0x68]
push dword [esp + 0x68]
call fcn.100ec3f0
push 1
call fcn.100e8a80
movss xmm1, dword [esp + 0x40]
add esp, 0x28
addss xmm1, dword [esp + 0x38]
movss xmm0, dword [esp + 0x34]
mov al, byte [edi + 0x65]
push ecx
xor ecx, ecx
mov dword [esp], 0x3f266666
and al, 3
movss dword [esp + 0x4c], xmm1
cmp al, 1
movss dword [esp + 0x50], xmm0
setne cl
add ecx, 2
push ecx
push ecx
mov dword [esp], 0x3f800000
push 0
call fcn.100d8cc0
add esp, 8
push eax
push dword [esp + 0x58]
mov eax, dword [esp + 0x2c]
push dword [esp + 0x58]
push dword [eax + 0x260]
call fcn.100ea800
add esp, 0x18
cmp byte [esp + 0x13], 0
je 0x100f81dc
movsx eax, byte [ebx + 0x1be]
cmp eax, dword [esp + 0x14]
je 0x100f81dc
test byte [edi + 0x65], 0xc
mov ebx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
ja 0x100f8100
push 0xa73
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.column__SortDirectionsAvailCount___0
call ebx
add esp, 0xc
cmp byte [edi + 0x56], 0xff
jne 0x100f8129
test byte [edi + 0x65], 0xc
ja 0x100f8120
push 0xa60
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.n___column__SortDirectionsAvailCount
call ebx
add esp, 0xc
movzx edx, byte [edi + 0x66]
jmp 0x100f81c4
xor ebx, ebx
nop dword [eax + eax]
movzx eax, byte [edi + 0x65]
shr eax, 2
and eax, 3
cmp ebx, eax
jl 0x100f8156
push 0xa60
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.n___column__SortDirectionsAvailCount
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov al, byte [edi + 0x66]
lea edx, [ebx + 1]
mov ah, byte [edi + 0x65]
add bl, bl
mov cl, bl
shr al, cl
xor al, ah
test al, 3
je 0x100f818e
mov ebx, edx
cmp ebx, 3
jl 0x100f8130
push 0xa79
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push 0x10148320
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
xor edx, edx
jmp 0x100f81c7
movzx ecx, ah
mov eax, edx
shr ecx, 2
and ecx, 3
cdq
idiv ecx
mov ebx, edx
cmp ebx, ecx
jl 0x100f81ba
push 0xa60
push str.C:UsersFrank.cargo_registry_srcindex.crates.io_6f17d22bba15001fimgui_sys_0.11.0._third_party_imgui_master_imgui_imgui_tables.cpp
push str.n___column__SortDirectionsAvailCount
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
movzx edx, byte [edi + 0x66]
mov cl, bl
add cl, cl
shr edx, cl
and edx, 3
movzx eax, byte [esi + 0xdd1]
push eax
push edx
push dword [esp + 0x1c]
call fcn.100f9a90
add esp, 0xc
mov ebx, dword [esp + 0x40]
lea eax, [esp + 0x60]
movss xmm1, dword [esp + 0x20]
movss xmm0, dword [esp + 0x5c]
addss xmm0, dword [esp + 0x44]
push eax
push ebp
push ebx
sub esp, 8
movss dword [esp + 0x5c], xmm1
addss xmm0, dword [esi + 0x37d8]
lea eax, [esp + 0x5c]
movss dword [esp + 4], xmm1
movss dword [esp], xmm1
push eax
lea eax, [esp + 0x70]
movss dword [esp + 0x64], xmm0
push eax
mov eax, dword [esp + 0x38]
push dword [eax + 0x260]
call fcn.100ec990
movss xmm0, dword [esp + 0x40]
add esp, 0x20
subss xmm0, dword [esp + 0x58]
movss xmm1, dword [esp + 0x60]
comiss xmm1, xmm0
jbe 0x100f8280
cmp byte [esp + 0x12], 0
je 0x100f8280
cmp dword [esi + 0x3e74], 0
jne 0x100f8280
push 0x800
call fcn.100e0d10
add esp, 4
test al, al
je 0x100f8280
push ebx
sub ebp, ebx
push ebp
push str._.s
call fcn.100f1280
add esp, 0xc
mov esi, dword [0x10180f98]
cmp byte [esi + 0x3717], 0
je 0x100f83a4
cmp byte [esi + 0x44d0], 0
jne 0x100f83a4
cmp byte [esi + 0x47e7], 0
mov edi, dword [esi + 0x3e28]
je 0x100f82f3
cmp byte [esi + 0x47e6], 0
jne 0x100f82f3
test byte [esi + 0x46a0], 4
jne 0x100f83a4
mov eax, dword [esi + 0x47ac]
cmp eax, dword [esi + 0x469c]
jne 0x100f83a4
test eax, eax
je 0x100f83a4
push dword [esp + 0x14]
call fcn.100f95f0
add esp, 4
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x68
ret
mov eax, dword [esi + 0x46a4]
test al, 1
je 0x100f83a4
cmp dword [esi + 0x3e2c], edi
je 0x100f8311
test al, al
jns 0x100f83a4
mov eax, dword [esi + 0x3e74]
test eax, eax
je 0x100f8331
cmp eax, dword [esi + 0x469c]
je 0x100f8331
cmp byte [esi + 0x3e81], 0
jne 0x100f8331
cmp eax, dword [edi + 0x6c]
jne 0x100f83a4
mov eax, dword [esi + 0x47a8]
test eax, eax
je 0x100f837b
mov eax, dword [eax + 0x2fc]
test eax, eax
je 0x100f837b
cmp byte [eax + 0xa7], 0
je 0x100f837b
mov ecx, dword [edi + 0x2fc]
cmp eax, ecx
je 0x100f837b
test dword [eax + 8], 0xc000000
je 0x100f837b
push eax
push ecx
call fcn.100e14b0
add esp, 8
test al, al
jne 0x100f837b
test dword [esi + 0x46a0], 0x100
je 0x100f83a4
test byte [esi + 0x46a0], 4
jne 0x100f83a4
mov eax, dword [esi + 0x469c]
cmp eax, dword [edi + 0x6c]
jne 0x100f8398
cmp byte [edi + 0xa8], 0
jne 0x100f83a4
push dword [esp + 0x14]
call fcn.100f95f0
add esp, 4
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x68
ret